AddTemplate_媒体处理_API文档

插件下载了解更多
VS Code 插件
安装插件之前,确保已安装 VS Code安装插件之前,确保已安装 VS Code
Alibaba Cloud Developer Toolkit is a collection of extensions that can help access Alibaba Cloud services in Visual Studio Code.
JetBrains 插件
安装插件之前,确保已安装 JetBrains IDE安装插件之前,确保已安装 JetBrains IDE
The Alibaba Cloud Developer Toolkit for JetBrains makes it easier to access Alibaba Cloud services.

接口说明

本接口参数中包含容器信息、视频和音频流等设置,如果相应部分不做设置,则使用模板转出来的码流中也不会包含相应的信息。

QPS 限制

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

流控信息

当前云产品API请求速率暂未透出。

授权信息

如下是此API对应的授权信息,用于RAM权限策略语句的Action元素中,为RAM用户或RAM角色授予调用此API的权限。请通过 RAM 访问控制设置,使用方法可参考访问控制帮助文档

具体说明如下:展开详情

操作访问级别资源类型条件关键字关联操作
mts:AddTemplate
Create
全部资源
*

请求参数

字段名称字段详情
Namestring

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

示例值:mps-example
Containerstring

容器,JSON 对象,其中包含参数为 Format(容器格式)。不设置 Container 参数则转码输出默认为 mp4 格式,如需其他格式则必须设置此对象。更多信息请参见 Container 详情展开详情

示例值:{"Format":"mp4"}
Videostring

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

示例值:{"Codec":"H.264","Profile":"high","Bitrate":"500","Crf":"15","Width":"256","Height":"800","Fps":"25","Gop":"10s"}
Audiostring

音频流配置。JSON 对象,详情参见 Audio 详情展开详情

示例值:{"Codec":"H.264","Samplerate":"44100","Bitrate":"500","Channels":"2"}
TransConfigstring

转码通用配置。JSON 对象,详情参见 TransConfig 详情。不设置 TransConfig 参数则转码配置全部为默认值,如默认值不能满足您的转码需求则必须按需设置此对象。

示例值:{"TransMode":"onepass"}
MuxConfigstring

切片配置字段。JSON 对象,详情参见 MuxConfig 详情。不设置 MuxConfig 参数则转码输出不分片,如需分片则必须设置此对象。

示例值:{"Segment":{"Duration":"10"}}

请求说明

JSON 对象 Container 详情

参数值类型是否必选描述
FormatString默认值:mp4。视频转码支持 flv、mp4、HLS(m3u8+ts)、MPEG-DASH(MPD+fMP4)。音频转码支持 mp3、mp4、ogg、flac、m4a。图片支持 gif、WEBP。容器格式为 gif 时,Video Codec 设置只能设置为 GIF,容器格式为 webp 时,Video Codec 设置只能设置为 WEBP,容器格式为 flv 时,Video Codec 不能设置为 H.265。

JSON 对象 Video 详情

参数值类型是否必选描述
CodecString编解码格式。支持 H.264、H.265、GIF、WEBP,默认值:H.264。
ProfileString编码级别。支持 baseline(适合移动设备)、main(适合标准分辨率设备)、high(适合高分辨率设备),默认值:high。最佳实践:如果您有多个清晰度,建议最低清晰度配成 baseline,以保证最低端设备可播放。其他清晰度配置为 main 或 high。目前仅 H.264 支持此参数。
BitrateString值范围:10~50000,单位:Kbps。
CrfString码率-质量控制因子。值范围:0~51,默认值:26。如果设置了 Crf,则 Bitrate 的设置失效。
WidthString宽。默认值:视频原始宽度,值范围:128~4096,单位:px。
HeightString高。默认值:视频原始高度,值范围:128~4096,单位:px。
FpsString帧率。默认值:取输入文件帧率。当输入文件帧率超过 60 时取 60。值范围:0~60。单位:fps。
GopString关键帧间最大时间间隔或者最大帧数。最大时间间隔时,必传单位 s。默认值:10s。最大帧数时,无单位,值范围:1~100000。
PresetString视频算法器预置。支持 veryfast(超快)、fast(快)、medium(中等)、slow(慢)、slower(超慢)。默认值:medium。目前仅 H.264 支持此参数。
ScanModeString扫描模式。支持 interlaced、progressive。
BufsizeString缓冲区大小。值范围:[1000,128000],默认值:6000,单位:Kb。
MaxrateString视频码率峰值。值范围[10,50000],单位 Kbps。
PixFmtString视频颜色格式。范围 yuv420p,yuvj420p 等标准颜色格式。默认值:yuv420p 或原始颜色格式。
RemoveString是否删除视频流。true 表示删除,false 表示保留,默认值:false。
CropString视频画面裁切。支持 2 种方式:自动检测黑边并裁切,设置为“border”。自定义裁切,参数格式:width:height:left:top。示例:1280:800:0:140。
PadString视频贴黑边。参数格式:width:height:left:top。示例:1280:800:0:140 。
LongShortModeString是否开启横竖屏自适应(即:长短边模式)。转码输出的宽对应输入片源的长边(竖屏为片源的高),高对应输入视频的短边(竖屏为片源的宽),true 表示开启,false 表示关闭,默认值:false。

以下表格显示视频转码编解码格式与容器格式的组合支持情况:

ContainerAudio CodecsVideo Codecs
flvAAC、MP3H.264
mp4AAC、MP3H.264、H.265
tsAAC、MP3H.264、H.265
m3u8AAC、MP3H.264、H.265
gif不支持GIF

以下表格显示视频编解码格式与视频流配置参数的组合支持情况:

Video/CodecH.264H.265GIF
ProfileYNN
BitrateYYN
CrfYYN
WidthYYY
HeightYYY
FpsYYY
GopYYN
PresetYNN
ScanModeYYY
BufsizeYYN
MaxrateYYN
PixFmtYYbgr8

JSON 对象 Audio 详情

参数值类型是否必选描述
CodecString音频编解码格式,AAC、MP3、VORBIS、FLAC。默认值:AAC。
ProfileString音频编码预置。当 Codec 为 AAC 时,范围 aac_low、aac_he、aac_he_v2、aac_ld、aac_eld。
SamplerateString采样率。默认值:44100,支持 22050、32000、44100、48000、96000,单位:Hz。若视频容器格式为 flv,音频编解码格式选择为 mp3 时,采样率不支持 32000、48000、96000;音频编解码格式为 mp3 时,采样率不支持 96000。
BitrateString输出文件的音频码率。值范围:[8,1000],单位:Kbps,默认值:128 。
ChannelsString声道数。默认值:2。当 Codec 设置为 mp3 时,声道数只支持 1、2;当 Codec 设置为 aac 时,声道数只支持 1、2、4、5、6、8。
RemoveString是否删除音频流。true 表示删除,false 表示保留,默认值:false。

以下表格显示音频转码编解码格式与容器格式的组合支持情况:

ContainerAudio Codecs
mp3MP3
mp4AAC
oggVORBIS、FLAC
flacFLAC

JSON 对象 TransConfig 详情

参数值类型是否必选描述
TransModeString转码模式。默认值:onepass,可选范围 onepass、twopass、CBR。
AdjDarMethodString分辨率改写方式。默认值:none,可选范围 rescale、crop、pad、none。
IsCheckResoString是否检查分辨率。如果输出分辨率大于输入分辨率(判断条件是宽或高),则输出分辨率等于输入分辨率。true 表示检查,false 表示不检查,默认值:false。
IsCheckResoFailString是否检查分辨率。如果输出分辨率大于输入分辨率(判断条件是宽或高),则返回转码失败。true 表示检查,false 表示不检查,默认值:false。
IsCheckVideoBitrateString是否检查视频码率。如果视频输出码率大于视频输入码率,则视频输出码率等于视频输入码率。true 表示检查,false 表示不检查,默认值:false。
IsCheckAudioBitrateString是否检查音频码率。如果音频输出码率大于音频输入码率,则音频输出码率等于音频输入码率。true 表示检查,false 表示不检查,默认值:false。
IsCheckAudioBitrateFailString当输出音频码率大于媒体源音频码率时,true 表示不进行转码,false 表示不检查,默认值:false,此值优先级大于 IsCheckAudioBitrate。
IsCheckVideoBitrateFailString当输出视频码率大于媒体源视频码率时,true 表示不进行转码,false 表示不检查,默认值:false,此值优先级大于 IsCheckVideoBitrate。

JSON 对象 MuxConfig 详情

参数值类型是否必选描述
SegmentStringJSON 对象,切片配置字段。参见 Segment 详情。

Segment 详情

参数值类型是否必选描述
DurationString分片时长。整数值,单位:秒,范围:[1,60],默认值:10 秒。
ForceSegTimeString指定分片时间列表,逗号分隔,最多可指定 10 个分片时间点。小数型,支持 3 位小数,单位:秒。示例:23、55、60,代表在 23,55,60 秒处分片。

返回参数

字段名称字段详情
RequestIdstring

请求 ID。

示例值:FA258E67-09B8-4EAA-8F33-BA567834A2C3
Templateobject

转码模板详细信息。

返回示例

变更历史

变更时间变更内容概要操作
2024-03-13
变更返回参数
2024-01-04
变更返回参数