调用AddMedia提交新增媒体作业。
使用说明
- 当在OSS上有存量视频时,可以通过此接口处理存量视频,从而避免重新上传视频到OSS。如果已经配置过工作流,上传媒体文件到OSS后,OSS会自动通知MPS。根据设置的OSS Bucket,Object自动匹配处于激活状态的工作流自动执行,因此通常情况下不需要手动调用AddMedia接口处理文件。
- 只有指定激活状态的工作流处理媒体文件时,才会自动获取媒体信息;不指定工作流或指定其他状态的工作流时,不会获取媒体信息。
QPS限制
本接口的单用户QPS限制为100次/秒。超过限制,API调用会被限流,这可能会影响您的业务,请合理调用。更多信息,请参见QPS限制。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | AddMedia |
操作接口名,系统规定参数。取值:AddMedia。 |
FileURL | String | 是 | http://bucket.oss-cn-hangzhou.aliyuncs.com/A/B/C/test.mp4 |
输入文件的路径,可以通过MPS或OSS控制台获取。详细触发规则请参见下文中工作流触发匹配规则。
|
Title | String | 否 | mytest |
媒体标题。
|
Description | String | 否 | A test video |
描述。
|
CoverURL | String | 否 | http://bucket.oss-cn-hangzhou.aliyuncs.com/example/1.png |
封面URL。即您需要设置的封面的存储地址,可以通过MPS控制台 > 工作流管理 > 媒体Bucket或OSS控制台 > 我的访问路径获取。
|
Tags | String | 否 | tag1,tag2 |
标签列表。 说明 媒体处理中,每个媒体的每个标签都是独立的,可以通过搜索媒体库来查找所有设置了相同标签的媒体。
|
MediaWorkflowId | String | 否 | 07da6c65da7f458997336e0de192**** |
媒体工作流ID。可通过MPS控制台或新增媒体工作流接口获取。 |
MediaWorkflowUserData | String | 否 | test |
媒体工作流用户自定义数据。
|
InputUnbind | Boolean | 否 | false |
是否检查指定的工作流支持输入路径。此处建议您选择检查(true),避免因路径出错而导致的错误。取值:
|
CateId | Long | 否 | 123 |
媒体所属类目ID。不允许为负数。 |
OverrideParams | String | 否 | {“subtitleTransNodeName”:{“InputConfig”:{“Format”:”stl”,”InputFile”:{“URL”:”http://exampleBucket.oss-cn-hangzhou.aliyuncs.com/package/example/CENG.stl"}}}} |
覆盖参数。
|
规则匹配执行策略如下:以新增文件的路径为基础,检查工作流绑定的位置,如果新增文件的路径中包含规则绑定的字符串则匹配,不包含则不匹配。例如:http://bucket.oss-cn-hangzhou.aliyuncs.com/A/B/C/test1.flv
规则:
1、http://bucket.oss-cn-hangzhou.aliyuncs.com/A/B/C/ 匹配
2、http://bucket.oss-cn-hangzhou.aliyuncs.com/A/B/ 匹配
3、http://bucket.oss-cn-hangzhou.aliyuncs.com/A/ 匹配
4、http://bucket.oss-cn-hangzhou.aliyuncs.com/ 匹配
5、http://bucket.oss-cn-hangzhou.aliyuncs.com/A/B/C/test.flv 匹配
6、http://bucket.oss-cn-hangzhou.aliyuncs.com/A/B/CC/ 不匹配
7、http://bucket.oss-cn-hangzhou.aliyuncs.com/A/B2/ 不匹配
8、http://bucket.oss-cn-hangzhou.aliyuncs.com/A2/B/C/ 不匹配
触发要求必须是多媒体文件,媒体库服务是通过文件扩展名来判断的。文件或者没有扩展名(文件名中不包含扩展名分割符号“.”),或者扩展名符合下面的规则:
类型 |
扩展名 |
---|---|
视频 |
3gp, asf, avi, dat, dv, flv, f4v, gif, m2t, m3u8, m4v, mj2, mjpeg, mkv, mov, mp4, mpe, mpg, mpeg, mts, ogg, qt, rm, rmvb, swf, ts, vob, wmv, webm |
音频 |
aac, ac3, acm, amr, ape, caf, flac, m4a, mp3, ra, wav, wma, aiff |
媒体工作流采用 阿里云消息服务 发送消息给视频云服务接入方,媒体工作流会在(Start/Report)活动节点完成时发送消息,若需要接收消息,需要在Start活动上设置队列/通知名称,媒体工作流产生的消息存储在队列/通知中,可以使用 消息服务SDK 获取消息,消息规格如下:
名称 |
类型 |
描述 |
---|---|---|
RunId |
String |
工作流执行ID。 |
Name |
String |
活动名称。 |
Type |
String |
活动类型。范围:Report、Start |
State |
String |
活动状态。范围:Fail、Success |
Code |
String |
错误码。如果活动状态是Fail时,会给出具体的错误码。 |
Message |
String |
错误消息。如果活动状态是Fail时,会给出详细的错误描述信息。 |
MediaWorkflowExecution |
MediaWorkflowExecution |
媒体工作流执行信息。 |
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
RequestId | String | 05F8B913-E9F3-4A6F-9922-48CADA0FFAAD |
请求ID。 |
Media | Object |
媒体信息。 |
|
CreationTime | String | 2016-09-20T03:02:40Z |
创建时间。 |
CateId | Long | 1 |
类目ID。 |
Height | String | 1280 |
媒体文件高度。 |
CensorState | String | Initiated |
视频审核状态。取值:
|
Tags | Array of String | tag,tag2 |
标签列表。 |
Bitrate | String | 1148.77 |
码率。 |
MediaId | String | 3e6149d5a8c944c09b1a8d2dc3e4**** |
媒体ID。 |
File | Object |
原文件。 |
|
State | String | Normal |
文件状态。此处默认为Normal(正常)。 |
URL | String | http://bucket.oss-cn-hangzhou.aliyuncs.com/A/B/C/test.mp4 |
文件URL。 |
PublishState | String | Published |
媒体发布状态,表示是否对外发布媒体。取值:
|
Description | String | A test video |
描述。长度不超过1024个字节。 |
Width | String | 1280 |
媒体文件宽度。 |
Size | String | 379860 |
媒体文件大小。 |
CoverURL | String | http://bucket.oss-cn-hangzhou.aliyuncs.com/example/1.png |
封面URL。 |
RunIdList | Array of String | {"RunId":["cbad98d35629470fa05ff393d347****"]} |
已执行的媒体工作流执行实例ID列表,半角逗号(,)分隔。 |
Duration | String | 2.645333 |
媒体文件时长。 |
Fps | String | 25.0 |
媒体文件帧率。 |
Title | String | mytest.mp4 |
媒体标题。长度不超过128个字节。 |
Format | String | mp4 |
格式。支持mov,mp4,m4a,3gp,3g2,mj2。 |
示例
请求示例
http(s)://mts.cn-shanghai.aliyuncs.com/?Action=AddMedia
&FileURL=http://bucket.oss-cn-hangzhou.aliyuncs.com/A/B/C/test.mp4
&Title=mytest
&Description=A test video
&CoverURL=http://bucket.oss-cn-hangzhou.aliyuncs.com/example/1.png
&Tags=tag1,tag2
&MediaWorkflowId=07da6c65da7f458997336e0de192****
&MediaWorkflowUserData=test
&InputUnbind=false
&CateId=123
&OverrideParams={“subtitleTransNodeName”:{“InputConfig”:{“Format”:”stl”,”InputFile”:{“URL”:”http://exampleBucket.oss-cn-hangzhou.aliyuncs.com/package/example/CENG.stl"}}}}
&<公共请求参数>
正常返回示例
XML
格式
HTTP/1.1 200 OK
Content-Type:application/xml
<AddMediaResponse>
<RequestId>05F8B913-E9F3-4A6F-9922-48CADA0FFAAD</RequestId>
<Media>
<CreationTime>2016-09-20T03:02:40Z</CreationTime>
<CateId>1</CateId>
<Height>1280</Height>
<CensorState>Initiated</CensorState>
<Tags>tag,tag2</Tags>
<Bitrate>1148.77</Bitrate>
<MediaId>3e6149d5a8c944c09b1a8d2dc3e4****</MediaId>
<File>
<State>Normal</State>
<URL>http://bucket.oss-cn-hangzhou.aliyuncs.com/A/B/C/test.mp4</URL>
</File>
<PublishState>Published</PublishState>
<Description>A test video</Description>
<Width>1280</Width>
<Size>379860</Size>
<CoverURL>http://bucket.oss-cn-hangzhou.aliyuncs.com/example/1.png</CoverURL>
<RunIdList>{"RunId":["cbad98d35629470fa05ff393d347****"]}</RunIdList>
<Duration>2.645333</Duration>
<Fps>25.0</Fps>
<Title>mytest.mp4</Title>
<Format>mp4</Format>
</Media>
</AddMediaResponse>
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "05F8B913-E9F3-4A6F-9922-48CADA0FFAAD",
"Media" : {
"CreationTime" : "2016-09-20T03:02:40Z",
"CateId" : 1,
"Height" : "1280",
"CensorState" : "Initiated",
"Tags" : [ "tag,tag2" ],
"Bitrate" : "1148.77",
"MediaId" : "3e6149d5a8c944c09b1a8d2dc3e4****",
"File" : {
"State" : "Normal",
"URL" : "http://bucket.oss-cn-hangzhou.aliyuncs.com/A/B/C/test.mp4"
},
"PublishState" : "Published",
"Description" : "A test video",
"Width" : "1280",
"Size" : "379860",
"CoverURL" : "http://bucket.oss-cn-hangzhou.aliyuncs.com/example/1.png",
"RunIdList" : [ "{\"RunId\":[\"cbad98d35629470fa05ff393d347****\"]}" ],
"Duration" : "2.645333",
"Fps" : "25.0",
"Title" : "mytest.mp4",
"Format" : "mp4"
}
}
错误码
访问错误中心查看更多错误码。