SubmitMediaProducingJob介面主要用於提交一個媒體剪輯合成任務。當使用者需要對視頻或音頻素材進行剪輯、合成或其他形式的後期製作時,可以通過調用此API介面來實現自動化處理。
介面說明
-
計費說明:視訊剪輯按照剪輯合成的成片時間長度計費,詳情請參見視訊剪輯。若處理失敗,不收取費用。
-
多樣化剪輯能力:當您需要將素材按照個人化創意進行編排和設計時,您需要調用該介面,該介面支援通過靈活的 Timeline 配置,實現複雜的視訊剪輯需求。
-
素材引用規則:雲剪輯時間軸中引用的素材,既可以是素材庫中的媒資,也可以直接引用 OSS 檔案,暫不支援外部地址或 CDN 地址。當素材為 OSS 檔案時,MediaUrl 僅支援 OSS 地址格式,如:https://your-bucket.oss-region-name.aliyuncs.com/your-object.ext。
-
非同步執行任務:該介面返回合成任務的提交結果,不保證介面返回時視頻已合成完畢。合成任務將進入後台排隊,非同步執行。
-
任務狀態查詢:
-
調用 GetMediaProducingJob ,通過傳入 JobId 查詢任務狀態和結果。
-
在提交剪輯合成作業時,您可以在請求參數中設定 UserData,將其包含回調地址。當剪輯任務完成或失敗時,系統會向該回調地址發送通知,您可以通過處理回調資料來瞭解任務的狀態。
-
-
媒資註冊與分析:視頻合成完成後,會自動註冊媒資,此時媒資還是分析中狀態,當媒資分析完成後,可以根據 MediaId 擷取成片時間長度及解析度資訊。
使用限制
-
該介面的流量控制值為 30 QPS(每秒提交任務的請求數)。提交的任務會進入後台排隊,以非同步方式處理。
說明如果超出此限制,可能會遇到 "Throttling.User" 錯誤。詳情請參見: 提交剪輯任務時遇到“Throttling.User”錯誤。
-
提交大量任務(如 1000 條、10000 條)時,系統會動態擴容,但可能會有一定排隊時間。
-
視頻軌、圖片軌、字幕軌的軌道數每種均限制最多 100 個。
-
素材個數無限制,素材檔案總大小不能超過 1 TB。
-
輸入或輸出 OSS Bucket 所在 Region,必須和使用 IMS 的 Region 保持一致。
-
當輸出為視頻時,成片解析度有以下限制:
寬高都不能小於 128 px。
寬高都不能大於 4096 px。
短邊不能大於 2160 px。
調試
您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。
調試
授權資訊
|
操作 |
存取層級 |
資源類型 |
條件關鍵字 |
關聯操作 |
|
ice:SubmitMediaProducingJob |
*全部資源
|
無 | 無 |
請求參數
|
名稱 |
類型 |
必填 |
描述 |
樣本值 |
| ProjectId |
string |
否 |
剪輯工程 ld。你可調用 CreateEditingProject 介面建立剪輯工程,並擷取 ProjectId 提交剪輯任務。 重要 必須填寫 ProjectId、Timeline、TemplateId 三個參數中的一個,剩餘兩個參數填寫為空白。 |
xxxxxfb2101cb318xxxxx |
| Timeline |
string |
否 |
雲剪輯任務時間軸,當您需要將素材按照視頻創意進行編排和特效設計時,可以手動構建 Timeline 參數。
重要 必須填寫 ProjectId、Timeline、TemplateId 三個參數中的一個,剩餘兩個參數填寫為空白。 |
{"VideoTracks":[{"VideoTrackClips":[{"MediaId":"****4d7cf14dc7b83b0e801c****"},{"MediaId":"****4d7cf14dc7b83b0e801c****"}]}]} |
| TemplateId |
string |
否 |
模板 Id,用於快速低門檻的構建時間軸。支援基於普通模板和進階模板的視訊剪輯。
重要 必須填寫 ProjectId、Timeline、TemplateId 三個參數中的一個,剩餘兩個參數填寫為空白。
|
****96e8864746a0b6f3**** |
| ClipsParam |
string |
否 |
模板對應的素材參數,Json 格式,當 TemplateId 不為空白時,ClipsParam 不可為空。具體格式見 普通模板建立及使用、進階模板建立及使用。 |
見模板使用文檔 |
| ProjectMetadata |
string |
否 |
剪輯工程的中繼資料資訊,Json 格式。具體結構定義參見 ProjectMetadata 。 |
{"Description":"剪輯視頻描述","Title":"剪輯標題測試"} |
| OutputMediaTarget |
string |
否 |
輸出成品的目標類型。取值:
|
oss-object |
| OutputMediaConfig |
string |
是 |
輸出成品的目標配置,Json 格式。可以設定輸出成品的在 OSS 上的 URL,或者 VOD Bucket 中的儲存位置。
|
{"MediaURL":"https://example-bucket.oss-cn-shanghai.aliyuncs.com/example.mp4"} |
| UserData |
string |
否 |
自訂設定,Json 格式,長度限制為 512 位元組。支援任務完成回調配置。其中:
|
{"NotifyAddress":"https://xx.com/xx","RegisterMediaNotifyAddress":"https://xxx.com/xx"} |
| ClientToken |
string |
否 |
保證請求等冪性。從您的用戶端產生一個參數值,確保不同請求間該參數值唯一。ClientToken 只支援 ASCII 字元,且不能超過 64 個字元。 |
****12e8864746a0a398**** |
| Source |
string |
否 |
剪輯合成請求來源,取值範圍:
|
OPENAPI |
| EditingProduceConfig |
string |
否 |
剪輯合成參數,配置詳情請參見 EditingProduceConfig 參數詳情。 說明
EditingProduceConfig 沒有配置封面圖片時,則預設使用視頻的第一幀作為封面。
|
{ "AutoRegisterInputVodMedia": "true", "OutputWebmTransparentChannel": "true" } |
| MediaMetadata |
string |
否 |
合成視頻的中繼資料,JSON 格式。具體結構定義,請參見 MediaMetadata 。 |
{ "Title":"test-title", "Tags":"test-tags1,tags2" } |
OutputMediaConfig 參數樣本
樣本:輸出到 OSS
{
"MediaURL":"https://my-test-bucket.oss-cn-shanghai.aliyuncs.com/test/xxxxxtest001xxxxx.mp4",
"Bitrate": 2000,
"Width": 800,
"Height": 680
}
當輸出到 OSS 時,MediaURL 必填。OutputMediaTarget 參數預設值為 "oss-object", 表示輸出到 OSS。 其他參數可以選填,其中 Bitrate 用來設定輸出成品的碼率,通常碼率越高越清晰,最大可以設定到 5000。 Width, Height 用來設定成品的解析度。
OSS URL 的路徑格式: https://bucketname.oss-region-name.aliyuncs.com/xxx/yyy.ext
bucketname 是 OSS Bucket 的名稱。
oss-region-name.aliyuncs.com 是 OSS 檔案的外網 Endpoint,比如上海,北京,杭州的分別是:
oss-cn-shanghai.aliyuncs.com
oss-cn-hangzhou.aliyuncs.com
oss-cn-beijing.aliyuncs.com
樣本:輸出到 vod
{
"StorageLocation": "outin-*xxxxxx7d2a3811eb83da00163exxxxxx.oss-cn-shanghai.aliyuncs.com",
"FileName": "output.mp4",
"Bitrate": 2000,
"Width": 800,
"Height": 680
}
當輸出到 VOD 時, StorageLocation 和 FileName 兩個參數必填。OutputMediaTarget 參數設定為 "vod-media", 表示輸出到點播 VOD 的儲存 Bucket。點播 VOD 可以使用的儲存位置可以在 VOD 裡面上傳媒資後,在媒資的儲存地址中看到。
OutputMediaConfig 結構中的參數說明
| 屬性名稱 | 類型 | 描述 |
| MediaURL | String | 輸出的媒資的 URL (當 OutputMediaTarget 的目標為 oss-object 時, 指定 OSS 檔案的 HTTP URL 路徑), 如:http://xxx-bucket-name.oss-cn-shanghai.aliyuncs.com/OSS 跟調用的服務所在地區相同。 |
| StorageLocation | String | 當 OutputMediaTarget 的目標為 vod-media 時, 指定 storage location 來儲存媒資到 VOD;storage location 是 VOD 中的檔案儲存體位置, 不包含 http:// 的首碼, 如:outin-xxxxxx.oss-cn-shanghai.aliyuncs.com。 |
| FileName | String | 當 OutputMediaTarget 的目標為 vod-media 時,指定 fileName(包含檔案尾碼,不含路徑)作為輸出檔案名。 |
| Width | Integer | 輸出成品的寬。可以不填,預設值是多個素材的最大寬。 |
| Height | Integer | 輸出成品的高。可以不填,預設值是多個素材的最大高。 |
| Bitrate | Integer | 輸出成品的碼率,單位為 Kbps。可以不填,預設值是多個素材的最高碼率,上限為 5000。若還要保留最高素材的碼率,需要設定 EditingProduceConfig.KeepOriginMaxBitrate=true,詳情請參見 EditingProduceConfig 。 |
| VodTemplateGroupId | String | 合成成片輸出到 vod,指定 vod 轉碼模板組。如不需要 VOD 轉碼,請填寫 "VOD_NO_TRANSCODE"。 |
返回參數
|
名稱 |
類型 |
描述 |
樣本值 |
|
object |
Schema of Response |
||
| RequestId |
string |
請求 ID。 |
****36-3C1E-4417-BDB2-1E034F**** |
| ProjectId |
string |
剪輯工程 ID。 |
****b4549d46c88681030f6e**** |
| JobId |
string |
合成作業 ID。 |
****d80e4e4044975745c14b**** |
| MediaId |
string |
合成媒資 ID。 |
****c469e944b5a856828dc2**** |
| VodMediaId |
string |
如果視頻輸出的位置為 vod 時,返回 vod 媒資 id。 |
****d8s4h75ci975745c14b**** |
樣本
正常返回樣本
JSON格式
{
"RequestId": "****36-3C1E-4417-BDB2-1E034F****",
"ProjectId": "****b4549d46c88681030f6e****",
"JobId": "****d80e4e4044975745c14b****",
"MediaId": "****c469e944b5a856828dc2****",
"VodMediaId": "****d8s4h75ci975745c14b****"
}
錯誤碼
|
HTTP status code |
錯誤碼 |
錯誤資訊 |
描述 |
|---|---|---|---|
| 400 | InvalidParameter | The specified parameter \ is not valid. | |
| 404 | ProjectNotFound | The specified project not found |
訪問錯誤中心查看更多錯誤碼。
變更歷史
更多資訊,參考變更詳情。