媒體轉碼是為多媒體數據提供的媒體處理服務。它以經濟、易用、彈性和高可擴展的音視頻轉換方法,幫助您將存儲于OSS的音視頻轉碼成適合在PC、TV以及移動終端上播放的格式。
功能簡介
功能包括:視頻轉碼、視頻轉封裝、視頻轉HLS、視頻轉動圖、視頻拼接、視頻截圖、視頻截雪碧圖、音頻轉碼、音頻提取、字幕提取、視頻加水印,視頻去臺標,視頻超分辨率等。
應用場景
終端覆蓋、網絡適配
轉換媒體分辨率和碼率,適應不同終端和網絡環境播放。
高效編碼、降低成本
在保證畫質前提下,以高效編碼算法,提質降碼,減少播放卡頓并節省存儲和流量費用。
智能生產、內容再造
利用視頻AI和超分技術、媒體處理技術,實現低畫質素材高清重生、視頻水印、截圖、剪輯等內容再造。
產品優勢
對比項 | 阿里云轉碼 | 自建轉碼 |
轉碼能力 | 高速穩定的并行轉碼系統,按需動態調整轉碼資源,自動擴容/縮容,應對高并發轉碼需求無縫擴展集群資源。 | 難以支撐大規模高并發轉碼任務。 |
轉碼算法 | 強大的計算資源,先進的視頻處理算法。 | 依賴開源轉碼服務。 |
功能 | 視頻轉碼,視頻轉封裝,視頻轉HLS,視頻轉動圖,視頻拼接,視頻截圖,視頻截雪碧圖,音頻轉碼,音頻提取,字幕提取等。 | 需要自行對接開源轉碼服務,從底層搭建轉碼服務。 |
支持音視頻格式列表
分類 | 格式 |
音頻 | AAC、MP3、WAV、FLAC、WMA、AC3、OPUS等多種音頻格式。 |
視頻 | MP4、MPEG-TS、MKV、MOV、AVI、FLV、M3U8、WebM、WMV、RM、VOB等多種視頻格式。 |
前提條件
已創建并獲取AccessKey。具體操作,請參見創建AccessKey。
已開通OSS服務、創建存儲空間并上傳文件到存儲空間。具體操作,請參見控制臺上傳文件。
已開通智能媒體管理服務。具體操作,請參見開通產品。
已通過智能媒體管理控制臺創建項目。具體操作,請參見創建項目。
說明您也可以調用API接口創建項目。具體操作,請參見CreateProject - 創建項目。
您可以調用ListProjects - 列出所有項目信息的列表接口列出指定地域下已創建的所有項目信息。
轉碼流程
將視頻文件上傳到OSS存儲空間,創建媒體轉碼任務,任務執行成功后,轉碼后的文件存儲在OSS中。
媒體轉碼
調用CreateMediaConvertTask - 創建媒體轉碼任務接口創建媒體轉碼任務。
任務開始執行后,任務信息只保存7天,超過7天則無法再獲取。您可以通過以下幾種方式及時獲取任務信息:
調用GetTask - 獲取任務信息或ListTasks - 列出任務接口獲取返回的
TaskId
,查看任務信息。在與智能媒體管理相同的地域下開通MNS服務,并配置訂閱關系,及時獲取任務信息通知,異步通知消息格式請參見異步通知消息格式。關于MNS SDK的更多信息,請參見步驟四:接收和刪除消息。
在與智能媒體管理相同的地域下開通RocketMQ服務,并創建RocketMQ 4.0實例、Topic、Group,及時獲取任務信息通知,異步通知消息格式請參見異步通知消息格式。關于RocketMQ使用的更多信息,請參見調用HTTP協議的SDK收發普通消息。
在與智能媒體管理相同的地域下開通并接入事件總線EventBridge服務,及時獲取任務信息通知。更多信息,請參見智能媒體管理IMM事件。
返回示例
{
"ProjectName": "test-project",
"DatasetName": "",
"RequestId": "A9E6C481-3A0F-06C4-94CD-EED91DE*****",
"StartTime": "2022-08-22T05:07:29.553Z",
"EndTime": "2022-08-22T05:07:53.661Z",
"UserData": "",
"TaskType": "MediaConvert",
"TaskId": "MediaConvert-f18efd3e-354a-4209-9ce2-e79476*****",
"Status": "Succeeded",
"Code": "",
"Message": "",
"Targets": [
{
"Code": "",
"Message": "",
"URI": "oss://bucket/test_convert.mp4",
"Subtitle": {
"Extract": {
"URI": "oss://bucket/DirtBaseExtractSubtitle"
}
},
"Image": {
"Sprites": [
{
"URI": "oss://bucket/DirtBaseImage_sprite0"
}
],
"Snapshots": [
{
"URI": "oss://bucket/DirtBaseImage_snapshot0"
}
]
}
}
]
}
FAQ
視頻轉碼請求失敗怎么辦?
如遇視頻轉碼請求失敗,可以嘗試設置TargetAudio.Codec參數為非copy后重試。詳情見文檔TargetAudio。
視頻轉碼后文件為什么變大了?
視頻轉碼后生成的文件比源文件大,原因主要是由于音視頻轉碼為有損壓縮,壓縮算法允許輸出更大的媒體文件,但是這樣不會帶來比源文件更好的圖像/聲音質量(只是損失的更小)。
如您需要控制輸出文件大小,可以通過設置TargetVideo參數下的BitrateOption/Bitrate/CRF控制輸出文件視頻流的碼率,或通過設置TargetAudio參數下的BitrateOption/Bitrate/Quality控制輸出文件音頻流的碼率。
視頻轉碼任務是否支持取消?
不支持取消。
視頻轉碼后方向不對,如何調整轉碼后視頻方向?
視頻處理參數配置TargetVideo中可以設置Codec為非copy,AdaptiveResolutionDirection為true,可開啟自適應分辨率方向。
視頻轉碼如何固定碼率,只設置bitrate參數為什么無法進行固定碼率轉碼?
參數TargetVideo中,目前比特率
bitrate
設置的是vbr,不支持cbr。vbr跟cbr區別不大,差異主要在瞬時碼率上,如果有需求可以通過設置maxbitrate
參數。
如何獲取轉碼成功后的視頻的播放時長?
要獲取轉碼成功后的視頻播放時長,可通過DetectMediaMeta - 獲取媒體文件元信息接口獲取,或者使用x-oss-process的video/info參數進行獲取,參考文檔視頻信息提取。