本文介紹了如何利用Intelligent Media Management(IMM)媒體轉碼介面實現視頻轉動圖的功能。
功能簡介
視頻轉動圖是將視頻檔案轉換為生動影像格式,如GIF或WebP,從而實現其在網頁和社交媒體上的便捷分享與嵌入。

使用情境
社交媒體分享:通過動圖,使用者能夠在社交平台上便捷地分享視頻片段,以表達情感、幽默時刻或重要訊息。
線上表情包:將視頻轉換為動圖可用於製作趣味或搞笑的表情包,從而增強線上交流的趣味性。
教程和示範:在教學與示範中,動態圖片可用於展示軟體操作或步驟引導,以協助觀眾快速理解複雜的概念和流程。
直播和賽事回放:在比賽、活動或直播過程中,可以利用動圖快速剪輯精彩瞬間,以便分享給觀眾,從而增強活動的參與感。
支援音視頻格式列表
分類 | 格式 |
音頻 | AAC、MP3、WAV、FLAC、WMA、AC3、OPUS等所有主流格式。 |
視頻 | MP4、MPEG-TS、MKV、MOV、AVI、FLV、M3U8、WebM、WMV、RM、VOB等所有主流格式。 |
如何使用
前提條件
已建立並擷取AccessKey。具體操作,請參見建立AccessKey。
已開通OSS服務、建立儲存空間。具體操作,請參見建立儲存空間。
已開通Intelligent Media Management服務。具體操作,請參見開通產品。
已通過Intelligent Media Management控制台建立專案。具體操作,請參見建立專案。
說明您也可以調用API介面建立專案。具體操作,請參見CreateProject - 建立專案。
您可以調用ListProjects - 列出所有專案資訊的列表介面列出指定地區下已建立的所有專案資訊。
步驟一:上傳檔案
請使用OSS管理主控台將媒體檔案上傳至IMM專案所在地區的Bucket。

步驟二:使用IMM視頻轉動圖
調用CreateMediaConvertTask - 建立媒體轉碼任務介面建立視頻轉動圖任務。
計費說明
在視頻轉動圖過程中,OSS 和 IMM 兩側會產生以下計費項目:
OSS 側: 詳細定價請參見OSS產品定價。
API
計費項目
說明
GetObject
GET 類型請求
根據成功的請求次數計算請求費用。
低頻訪問資料取回容量
如果取回的資料是低頻訪問資料,會產生低頻訪問資料取回容量的費用,按資料取回量計費。
歸檔直讀資料取回容量
如果讀取的是歸檔的Object且Bucket開啟了歸檔直讀,會產生歸檔直讀資料取回容量費用,根據取回的資料容量大小計費。
傳輸加速
如果開啟了傳輸加速功能且使用傳輸加速網域名稱訪問您的Bucket會產生傳輸加速費用,根據資料容量大小計費。
PutObject
PUT類型請求
根據成功的請求次數計算請求費用。
儲存費用
根據Object的儲存類型、大小和時間長度收取儲存費用。
HeadObject
GET 類型請求
根據成功的請求次數計算請求費用。
IMM 側: 詳細定價請參見IMM計費項目。
重要自北京時間 2025 年 7 月 28 日 11:00 起,IMM 視頻轉動圖服務將由原來的免費模式升級為計費模式。更多資訊,請參見IMM計費調整公告。
API
計費項目
說明
CreateMediaConvertTask
MediaAnimation
根據輸出動圖幀數計算視頻轉動圖的費用。
參數樣本
以下樣本使用IMM專案test-project,檔案oss://test-bucket/video-demo/釀酒.mov來進行視頻轉動圖處理。
更多有關ApsaraVideo for Media Processing各功能介紹和使用,請參見媒體轉碼。
您可以通過OpenAPI 門戶使用媒體轉碼介面對視頻檔案進行處理,可參考SDK代碼。
視頻轉動圖請勿設定Target.URI和Target.Container參數。
Gif格式動圖映像品質較差,可通過使用WebP格式動圖獲得更好的動圖體驗,但這會造成動圖檔案變大。
推薦FrameRate設定為10~15,不設定則預設為1/Interval。
對整段視頻產生動圖縮減
轉碼資訊
動圖格式:webp
抽幀時間間隔:1秒
動圖幀率:15
動圖解析度:源視頻的1/2
動圖縮放方式:縮放並不保留黑邊,縮放方式請參見縮放方式
輸出檔案儲存路徑:
oss://test-bucket/video-demo/animation.webp轉碼完成訊息通知:發送MNS訊息到MNS主題“test-mns-topic”
SDK樣本請參見OpenAPI門戶,已為您自動填滿樣本的參數,請您按需修改後再進行調試。
請求參數如下
{
"ProjectName": "test-project",
"Notification": {
"MNS": {
"TopicName": "test-mns-topic"
}
},
"Sources": [
{
"URI": "oss://test-bucket/video-demo/釀酒.mov"
}
],
"Targets": [
{
"Image": {
"Animations": [
{
"Format": "webp",
"FrameRate": 15,
"Height": 0.5,
"Interval": 1,
"ScaleType": "fit",
"URI": "oss://test-bucket/video-demo/animation.{autoext}",
"Width": 0.5
}
]
}
}
]
}對視頻的5秒至30秒產生動態縮圖
轉碼資訊
動圖格式:webp
抽幀開始時間:第5秒
抽幀時間長度:25秒
抽幀時間間隔:1秒
動圖幀率:15
動圖解析度:源視頻的1/2
動圖縮放方式:縮放並不保留黑邊,縮放方式請參見縮放方式
輸出檔案儲存路徑:
oss://test-bucket/video-demo/animation.webp轉碼完成訊息通知:發送MNS訊息到MNS主題“test-mns-topic”
SDK樣本請參見OpenAPI門戶,已為您自動填滿樣本的參數,請您按需修改後再進行調試。
請求參數如下
{
"ProjectName": "test-project",
"Notification": {
"MNS": {
"TopicName": "test-mns-topic"
}
},
"Sources": [
{
"Duration": 25,
"StartTime": 5,
"URI": "oss://test-bucket/video-demo/釀酒.mov"
}
],
"Targets": [
{
"Image": {
"Animations": [
{
"Format": "webp",
"FrameRate": 15,
"Height": 0.5,
"Interval": 1,
"ScaleType": "fit",
"URI": "oss://test-bucket/video-demo/animation.{autoext}",
"Width": 0.5
}
]
}
}
]
}