调用UpdateTemplate更新自定义转码模板设置。

使用说明

如果有状态为“已提交”的作业指定使用该自定义模板,则相应的转码模板信息不能被更新。

QPS限制

本接口的单用户QPS限制为100次/秒。超过限制,API调用会被限流,这可能会影响您的业务,请合理调用。更多信息,请参见QPS限制

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String UpdateTemplate

操作接口名,系统规定参数,取值:UpdateTemplate

TemplateId String 16f01ad6175e4230ac42bb5182cd****

模板ID。可以从新增自定义转码模板的返回参数中获取。

Name String MPS-example

模板名称。最大长度128字节。

Container String {"Format":"mp4"}

容器,JSON对象。默认值:mp4

  • 视频转码支持flv、mp4、HLS(m3u8+ts)、MPEG-DASH(MPD+fMP4)。
  • 音频转码支持mp3、mp4、ogg、flac、m4a。
  • 图片支持gif、WEBP。

更多信息请参见参数详情Container详情

Video String {"Codec":"H.264","Profile":"high","Bitrate":"500","Crf":"15","Width":"256","Height":"800","Fps":"25","Gop":"10"}

视频流配置,JSON对象。更多信息请参见参数详情Video详情

Audio String {"Codec":"aac","Samplerate":"44100","Bitrate":"500","Channels":"2"}

音频流配置,JSON对象。更多信息请参见参数详情Audio详情

MuxConfig String {"Segment":{"Duration":"10"}}

封包配置,JSON对象。更多信息请参见参数详情MuxConfig详情

TransConfig String {"TransMode":"onepass"}

转码通用配置,JSON对象。更多信息请参见参数详情TransConfig

返回数据

名称 类型 示例值 描述
RequestId String 5E4FB22E-B9EA-4E24-8FFC-B407EA71QW21

请求ID。

Template Object

转码模板类型。

Video Object

视频编解码配置。

LongShortMode String false

是否开启横竖屏自适应(即:长短边模式)。

  • 转码输出的宽对应输入片源的长边(竖屏为片源的高),高对应输入视频的短边(竖屏为片源的宽)。
  • true表示开启。
  • false表示关闭。
  • 默认值:false
Bufsize String 6000

缓冲区大小。

  • 单位:Kb。
  • 默认值:6000
Degrain String 10

视频质量控制度。

BitrateBnd Object

视频平均码率范围。

Max String 500

总码率上限。单位:Kbps。

Min String 100

总码率下限。单位:Kbps。

PixFmt String yuv420p

视频颜色格式。范围:yuv420p、yuvj420p等标准颜色格式。

Pad String 1280:800:0:140

视频贴黑边。

  • 参数格式:width:height:left:top。
  • 示例:1280:800:0:140。
Codec String H.264

编解码格式。默认值:H.264

Height String 800

高。

  • 单位:px。
  • 默认值:视频原始高度
Qscale String 1

独立去噪算法强度。

Crop String border

视频画面裁切。支持2种方式:

  • 自动检测黑边并裁切:设置为“border”。
  • 自定义裁切:自定义格式进行裁剪。参数格式:width:height:left:top。示例:1280:800:0:140。
Bitrate String 200

视频平均码率。单位:Kbps。

Maxrate String 500

视频码率峰值。单位:(Kbps)。

MaxFps String 60

最大帧率。

Profile String high

编码级别。

  • baseline:针对移动设备。
  • main:针对标准分辨率设备。
  • high:针对高分辨率设备。
  • 默认值:high
Crf String 15

码率-质量控制因子。

  • 默认值:编码格式为H264,默认值为23。编码格式为H265,默认值为26
  • 如果设置了Crf,则Bitrate的设置失效。
Remove String false

是否删除视频流

  • true表示删除。
  • false表示保留。
  • 默认值:false
Gop String 10

关键帧间最大帧数。默认值:250

Width String 256

视频宽。

  • 单位:px。
  • 默认值:视频原始宽度
Fps String 25

帧率。

  • 当输入文件帧率超过60时取60。
  • 默认值:取输入文件帧率
Preset String medium

视频算法器预置。默认值:medium。可选值:

  • veryfast:超快。
  • fast:快。
  • medium:中等。
  • slow:慢。
  • slower:超慢。
ScanMode String interlaced

扫描模式。可选值:

  • interlaced:交叉扫描。
  • progressive:顺序扫描。
ResoPriority String 1

分辨率调整优先级

TransConfig Object

转码通用配置。

IsCheckAudioBitrate String false

是否检查音频码率。

  • 如果音频输出码率大于音频输入码率,则音频输出码率等于音频输入码率。
  • true表示检查。
  • false表示不检查。
  • 默认值:false
TransMode String onepass

转码模式。默认值:onepass。可选范围:

  • onepass
  • twopass
  • CBR
IsCheckReso String false

是否检查分辨率。

  • 如果输出分辨率大于输入分辨率(判断条件是宽或高),则输出分辨率等于输入分辨率。
  • true表示检查。
  • false表示不检查。
  • 默认值:false
IsCheckVideoBitrateFail String false

当输出视频码率大于媒体源视频码率时:

  • true表示不进行转码。
  • false表示不检查。
  • 默认值:false
  • 此值优先级大于IsCheckVideoBitrate。
AdjDarMethod String none

分辨率改写方式。默认值:none。可选值:

  • rescale:范围拉伸
  • crop:批量裁剪
  • none:不改变。
IsCheckVideoBitrate String false

是否检查视频码率。

  • 如果视频输出码率大于视频输入码率,则视频输出码率等于视频输入码率。
  • true表示检查。
  • false表示不检查。
  • 默认值:false
IsCheckResoFail String false

是否检查分辨率。

  • 如果输出分辨率大于输入分辨率(判断条件是宽或高),则返回转码失败。
  • true表示检查。
  • false表示不检查。
  • 默认值:false
IsCheckAudioBitrateFail String false

当输出音频码率大于媒体源音频码率时:

  • true表示不进行转码。
  • false表示不检查。
  • 默认值:false
  • 此值优先级大于IsCheckAudioBitrate。
State String Normal

模板的状态。

  • Normal:正常。
  • Deleted:已删除。
MuxConfig Object

转码封包配置。

Webp Object

Webp对应的封包配置。

Loop String 0

循环次数。

Gif Object

Gif对应的封包配置。

FinalDelay String false

终帧暂停时间。单位:毫秒(ms)。

DitherMode String bayer

调色板颜色抖动方式。抖动算法可选值为sierra算法和bayer算法。

Loop String 0

循环次数。

IsCustomPalette String 0

自定义调色板功能。

Segment Object

切片配置。

Duration String 10

分片时长。单位:秒(s)。

Name String MPS-example

模板名称。

Audio Object

音频编解码配置。

Profile String aac_low

音频编码预置。当Codecaac时可选值:

  • aac_low
  • aac_he
  • aac_he_v2
  • aac_ld
  • aac_eld
Remove String false

是否删除音频流。

  • true表示删除。
  • false表示保留。
  • 默认值:false
Codec String aac

音频编解码格式。默认值:aac。可选值:

  • aac
  • mp3
  • vorbis
  • flac
Samplerate String 44100

采样率。

  • 单位:Hz。
  • 默认值:44100
Qscale String 1

独立去噪算法强度。

Channels String 2

声道数。默认值:2

Bitrate String 500

输出文件的音频码率。

  • 取值范围:[8,1000]
  • 单位:Kbps。
  • 默认值:128
Id String 16f01ad6175e4230ac42bb5182cd****

转码模板ID。

Container Object

容器。

Format String mp4

容器格式。

示例

请求示例

http(s)://mts.cn-shanghai.aliyuncs.com/?Action=UpdateTemplate/?Action=UpdateTemplate
&ResourceOwnerId=1
&TemplateId=16f01ad6175e4230ac42bb5182cd****
&Name=MPS-example
&Container={"Format":"mp4"}
&Video={"Codec":"H.264","Profile":"high","Bitrate":"500","Crf":"15","Width":"256","Height":"800","Fps":"25","Gop":"10"}
&Audio={"Codec":"aac","Samplerate":"44100","Bitrate":"500","Channels":"2"}
&MuxConfig={"Segment":{"Duration":"10"}}
&TransConfig={"TransMode":"onepass"}
&<公共请求参数>

正常返回示例

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<UpdateTemplateResponse>
    <RequestId>5E4FB22E-B9EA-4E24-8FFC-B407EA71QW21</RequestId>
    <Template>
        <Video>
            <LongShortMode>false</LongShortMode>
            <Bufsize>6000</Bufsize>
            <Degrain>10</Degrain>
            <BitrateBnd>
                <Max>500</Max>
                <Min>100</Min>
            </BitrateBnd>
            <PixFmt>yuv420p</PixFmt>
            <Pad>1280:800:0:140</Pad>
            <Codec>H.264</Codec>
            <Height>800</Height>
            <Qscale>1</Qscale>
            <Crop>border</Crop>
            <Bitrate>200</Bitrate>
            <Maxrate>500</Maxrate>
            <MaxFps>60</MaxFps>
            <Profile>high</Profile>
            <Crf>15</Crf>
            <Remove>false</Remove>
            <Gop>10</Gop>
            <Width>256</Width>
            <Fps>25</Fps>
            <Preset>medium</Preset>
            <ScanMode>interlaced</ScanMode>
            <ResoPriority>1</ResoPriority>
        </Video>
        <TransConfig>
            <IsCheckAudioBitrate>false</IsCheckAudioBitrate>
            <TransMode>onepass</TransMode>
            <IsCheckReso>false</IsCheckReso>
            <IsCheckVideoBitrateFail>false</IsCheckVideoBitrateFail>
            <AdjDarMethod>none</AdjDarMethod>
            <IsCheckVideoBitrate>false</IsCheckVideoBitrate>
            <IsCheckResoFail>false</IsCheckResoFail>
            <IsCheckAudioBitrateFail>false</IsCheckAudioBitrateFail>
        </TransConfig>
        <State>Normal</State>
        <MuxConfig>
            <Webp>
                <Loop>0</Loop>
            </Webp>
            <Gif>
                <FinalDelay>false</FinalDelay>
                <DitherMode>bayer</DitherMode>
                <Loop>0</Loop>
                <IsCustomPalette>0</IsCustomPalette>
            </Gif>
            <Segment>
                <Duration>10</Duration>
            </Segment>
        </MuxConfig>
        <Name>MPS-example</Name>
        <Audio>
            <Profile>aac_low</Profile>
            <Remove>false</Remove>
            <Codec>aac</Codec>
            <Samplerate>44100</Samplerate>
            <Qscale>1</Qscale>
            <Channels>2</Channels>
            <Bitrate>500</Bitrate>
        </Audio>
        <Id>16f01ad6175e4230ac42bb5182cd****</Id>
        <Container>
            <Format>mp4</Format>
        </Container>
    </Template>
</UpdateTemplateResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "RequestId" : "5E4FB22E-B9EA-4E24-8FFC-B407EA71QW21",
  "Template" : {
    "Video" : {
      "LongShortMode" : "false",
      "Bufsize" : "6000",
      "Degrain" : "10",
      "BitrateBnd" : {
        "Max" : "500",
        "Min" : "100"
      },
      "PixFmt" : "yuv420p",
      "Pad" : "1280:800:0:140",
      "Codec" : "H.264",
      "Height" : "800",
      "Qscale" : "1",
      "Crop" : "border",
      "Bitrate" : "200",
      "Maxrate" : "500",
      "MaxFps" : "60",
      "Profile" : "high",
      "Crf" : "15",
      "Remove" : "false",
      "Gop" : "10",
      "Width" : "256",
      "Fps" : "25",
      "Preset" : "medium",
      "ScanMode" : "interlaced",
      "ResoPriority" : "1"
    },
    "TransConfig" : {
      "IsCheckAudioBitrate" : "false",
      "TransMode" : "onepass",
      "IsCheckReso" : "false",
      "IsCheckVideoBitrateFail" : "false",
      "AdjDarMethod" : "none",
      "IsCheckVideoBitrate" : "false",
      "IsCheckResoFail" : "false",
      "IsCheckAudioBitrateFail" : "false"
    },
    "State" : "Normal",
    "MuxConfig" : {
      "Webp" : {
        "Loop" : "0"
      },
      "Gif" : {
        "FinalDelay" : "false",
        "DitherMode" : "bayer",
        "Loop" : "0",
        "IsCustomPalette" : "0"
      },
      "Segment" : {
        "Duration" : "10"
      }
    },
    "Name" : "MPS-example",
    "Audio" : {
      "Profile" : "aac_low",
      "Remove" : "false",
      "Codec" : "aac",
      "Samplerate" : "44100",
      "Qscale" : "1",
      "Channels" : "2",
      "Bitrate" : "500"
    },
    "Id" : "16f01ad6175e4230ac42bb5182cd****",
    "Container" : {
      "Format" : "mp4"
    }
  }
}

错误码

访问错误中心查看更多错误码。