AddMedia API はメディアを追加します。
注意:
ワークフローが設定され、OSS にメディアファイルがアップロードされると、OSS は自動的に MPS に通知します。MPS は OSS バケットおよび OSS オブジェクトに適合する、有効なワークフローを特定します。適合したワークフローは自動的に開始されます。したがって、通常は人手を介さずに AddMedia API よりファイルは自動的に処理されますが、OSS 内のビデオファイルをアップロードせずに AddMedia API を手動で実行することもできます。
**有効なワークフローを指定して実行すると、メディア情報は自動的に取得されます。ワークフローが指定されていない場合、メディア情報は取得されません。
リクエスト パラメーター
パラメーター | データ型 | 必須 | 説明 |
---|---|---|---|
Action | String | はい | 操作 API、システム必須パラメーター。パラメーターの値は AddMedia にします。 |
FileURL | String | はい | メディアファイルへのパス(最大 3200 バイト、URL 形式は RFC 2396 標準に従い、UTF-8 および URL エンコードで符号化) |
Title | String | いいえ | メディアタイトル(最大 128 バイト、UTF-8 で符号化) |
Description | String | いいえ | 説明(最大 1024 バイト、UTF-8 で符号化) |
CoverURL | String | いいえ | カバー(最大 3200 バイト、URL 形式は RFC 2396 標準に従い、UTF-8 および URL エンコードで符号化) |
CateId | Long | いいえ | カテゴリ ID(負の数値は不可) |
Tags | String | いいえ | カンマ (,) で区切られたタグのリスト(各タグは最大 32 バイト、最大 16 個、UTF-8 で符号化) |
MediaWorkflowId | String | いいえ | メディアワークフローの ID |
MediaWorkflowUserData | String | いいえ | メディアワークフローのカスタム データ(最大 1024 バイト、UTF-8 で符号化) |
OverrideParams | JSON | いいえ | パラメーターを上書きします。例:{“WebVTTSubtitleOverrides”,[{“RefActivityName”:”subtitleNode”,”WebVTTSubtitleURL”:”http://test.oss-cn-hangzhou.aliyuncs.com/subtitle1.vtt"}]} |
-
ワークフロー起動のマッチングルール
マッチングルールの処理:新規ファイルのパスに基づき、マッチングルールはワークフローがバインドされているパスをチェックします。ファイルのパスにマッチングルールにバインドされた文字列を含む場合、マッチングルールに適合します。ファイルのパスにマッチングルールにバインドされた文字列を含まない場合、マッチングルールに適合しません。たとえば、
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/ 不一致
注意:ワークフローの入力パスは、他のワークフローの入力パスと接頭辞が重ならないようにします。接頭辞が同じのものがあると、インクリメントされたファイルは、2 つのワークフローを実行してしまいます。たとえば、2 つのワークフローがあり、入力パスが test および test1 であるとします。入力ファイルが test1 フォルダにアップロードされると、test1 フォルダの接頭辞が test であり、ルールに一致するため、2 つのワークフローが起動します。
-
ファイル名拡張子の一致
マルチメディア ファイルのみ、メディア ワークフローを起動します(メディア リポジトリはファイルの拡張子でマルチメディア ファイルであることを特定します)。ファイルに拡張子がないか、次の拡張子に適合する場合:
注意: 拡張子が .swf ファイルのスクリーンショットおよびトランスコードは、品質が保証されません。
タイプ | ファイルの拡張子 |
---|---|
ビデオ | 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 アクティビティが完了すると、メディアワークフローは、Alibaba Cloud Message Service を使用して、ビデオ クラウド サービスにアクセスするユーザーにメッセージを送信します。メッセージを受信するには、Start ノードに MNS キュー名および通知名を指定します。MNS キューまたは通知に格納されたメッセージは Message Service SDK を使用して取得します。メッセージの形式は次のとおりです。
パラメーター | データ型 | 説明 |
---|---|---|
RunId | String | ワークフロー実行インスタンス ID |
Name | String | アクティビティ名 |
Type | String | アクティビティタイプ(Report または Start) |
State | String | アクティビティのステータス(Fail または Success) |
Code | String | エラーコード。アクティビティの状態が Fail の場合、エラーコードを返します。 |
Message | String | エラーメッセージ。アクティビティーの状態が Fail の場合、エラーメッセージを返します。 |
MediaWorkflowExecution | MediaWorkflowExecution | メディアワークフロー実行の情報 |
JSON メッセージ本文の例:
{
"RunId": "8f8aba5a62ab4127ae2add18da20b0f2",
"Name": "Act-7",
"Type": "Report",
"State": "Success",
"MediaWorkflowExecution": {
"Name": "ConcurrentSuccess",
"RunId": "8f8aba5a62ab4127ae2add18da20b0f2",
"Input": {
"InputFile": {
"Bucket": "inputfirst",
"Location": "oss-test",
"Object": "mediaWorkflow/ConcurrentSuccess/01.wmv"
},
"UserData":"test"
},
"State": "Success",
"MediaId": "2be491ab4cb6499cd0befe5fcf0cb670",
"ActivityList": [
{
"RunId": "8f8aba5a62ab4127ae2add18da20b0f2",
"Name": "Act-1",
"Type": "Start",
"State": "Success",
"StartTime": "2016-03-15T02: 53: 41Z",
"EndTime": "2016-03-15T02: 53: 41Z"
},
{
"RunId": "8f8aba5a62ab4127ae2add18da20b0f2",
"Name": "Act-2",
"Type": "Transcode",
"JobId": "f34b6d1429dd491faa7a6c1c8f905285",
"State": "Success",
"StartTime": "2016-03-15T02: 53: 43Z",
"EndTime": "2016-03-15T02: 53: 47Z"
},
{
"RunId": "8f8aba5a62ab4127ae2add18da20b0f2",
"Name": "Act-3",
"Type": "Transcode",
"JobId": "888ac3903ecf4898b9d790cf7f1d969e",
"State": "Success",
"StartTime": "2016-03-15T02: 53: 44Z",
"EndTime": "2016-03-15T02: 53: 48Z"
},
{
"RunId": "8f8aba5a62ab4127ae2add18da20b0f2",
"Name": "Act-5",
"Type": "Snapshot",
"JobId": "c14150be33304825a5d67cd5364c35cb",
"State": "Success",
"StartTime": "2016-03-15T02: 53: 44Z",
"EndTime": "2016-03-15T02: 53: 45Z"
},
{
"RunId": "8f8aba5a62ab4127ae2add18da20b0f2",
"Name": "Act-6",
"Type": "Snapshot",
"JobId": "8c30c30ca7324286afda1a9a1b14d03c",
"State": "Success",
"StartTime": "2016-03-15T02: 53: 48Z",
"EndTime": "2016-03-15T02: 53: 49Z"
},
{
"RunId": "8f8aba5a62ab4127ae2add18da20b0f2",
"Name": "Act-7",
"Type": "Report",
"State": "Success",
"StartTime": "2016-03-15T02: 53: 49Z",
"EndTime": "2016-03-15T02: 53: 49Z"
}
],
"CreationTime": "2016-03-15T02: 53: 39Z"
}
}
応答パラメーター
パラメーター | データ型 | 説明 |
---|---|---|
メディア | メディア | メディア |
例
リクエスト例
http://mts.cn-hangzhou.aliyuncs.com?MediaWorkflowUserData=test&MediaWorkflowId=09bc2f74e39c48dd86597849e2b060f6&FileURL=http%3A%2F%2Fzzzinput-test.oss-cn-hangzhou.aliyuncs.com%2Ftail_comm-33.mp4&<public parameter>
応答例
XML 形式
<AddMediaResponse>
<Media>
<CoverURL>http://zzyoutputbucket.oss-cn-hangzhou.aliyuncs.com/aa9bb3115da54befa74e0bd81a7a9e46%2F0.jpg</CoverURL>
<Format>mov,mp4,m4a,3gp,3g2,mj2</Format>
<PublishState>Published</PublishState>
<Height>1280</Height>
<MediaId>3e6149d5a8c944c09b1a8d2dc3e4ac65</MediaId>
<Title>tail_comm-33.mp4</Title>
<CreationTime>2016-09-20T03:02:40Z</CreationTime>
<RunIdList>
<RunId>adee42a78b1f407184a792b8777efb3c</RunId>
</RunIdList>
<CateId>0</CateId>
<Duration>2.645333</Duration>
<Width>1280</Width>
<Fps>25.0</Fps>
<Bitrate>1148.77</Bitrate>
<Size>379860</Size>
</Media>
<RequestId>13E58723-4746-46A5-900D-B41D425A2A44</RequestId>
</AddMediaResponse>
JSON 形式
{
"Media": {
"CoverURL": "http://zzyoutputbucket.oss-cn-hangzhou.aliyuncs.com/adee42a78b1f407184a792b8777efb3c%2F0.jpg",
"Format": "mov,mp4,m4a,3gp,3g2,mj2",
"PublishState": "Published",
"Height": "1280",
"MediaId": "3e6149d5a8c944c09b1a8d2dc3e4ac65",
"Title": "tail_comm-33.mp4",
"CreationTime": "2016-09-20T03:02:40Z",
"RunIdList": {
"RunId": [
"cbad98d35629470fa05ff393d347fd73"
]
},
"CateId": 0,
"Duration": "2.645333",
"Width": "1280",
"Fps": "25.0",
"Bitrate": "1148.77",
"Size": "379860"
},
"RequestId": "A29ED91C-84A2-41FE-8F7F-116531A28544"
}