天天看點

COS資料工作流+雲函數最佳實踐 - 自定義音視訊轉碼

01 背景

音視訊作為資訊傳播中流量占比最大的部分在各行業的業務中都彌足重要,而不同的業務場景中對音視訊的處理邏輯可能具備行業的特殊性。

公有雲雖然提供大量的視訊處理服務供使用者選擇,但依然不能做到全面覆寫使用者的特殊流程及定制化需求,使用 COS 工作流處理結合雲函數定制邏輯此時就是一個絕佳選擇,幫助使用者快速建立滿足需求的各種音視訊處理服務。

COS資料工作流+雲函數最佳實踐 - 自定義音視訊轉碼

02 應用場景

  • 快速接入使用者自建轉碼叢集,相容使用者原有業務;
  • 支援行業特殊格式與處理邏輯,接入電影、安防等特殊行業;
  • 支援使用者自定義處理邏輯,滿足各場景下定制流程需求;
  • 觸發工作流批量模闆化處理,滿足視訊網站、教育、社互動聯行業常見音視訊處理需求;

03 方案優勢

  • 加速開發:不再需要關注資源運維與元件開銷,極大地降低了服務架構搭建的複雜性;
  • 降低開銷:空閑時沒有資源在運作,函數執行時按請求數和計算資源的運作時間收費,價格優勢明顯;
  • 高可用、高擴充:根據請求自動平行調整服務資源,擁有近乎無限的擴容能力,且免除單可用區運作的故障風險;

04 配置步驟

1.到 COS 控制台存儲桶詳情,建立工作流,可以自定義過濾字尾過濾規則,建立自定義函數節點。

COS資料工作流+雲函數最佳實踐 - 自定義音視訊轉碼

2.在函數節點彈窗裡,點選建立函數,浏覽器新标簽會打開 SCF 的建立雲函數的頁面。

COS資料工作流+雲函數最佳實踐 - 自定義音視訊轉碼

3.建立雲函數步驟:

A. 選擇“COS 資料工作流音視訊轉碼”模闆;

B. 配置足夠的記憶體、執行逾時時間;

C. 該函數模闆支援五個環境變量;

  • targetBucket 目标存儲桶,必填;
  • targetRegion 目标存儲桶地域,必填;
  • targetKeyTemplate 目标路徑模闆,可選,預設${InputPath}${InputName}_transcode.${ext}
  • ffmpegTemplate 轉碼指令模闆,必填,例如${ffmpeg} -loglevel error -i ${source} -r 10 -b:a32k ${target}
  • localTmpPath臨時儲存路徑,當綁定CFS時可以更改臨時路徑,可選,預設 /tmp

    D. 啟用權限配置,綁定包含目前存儲桶讀權限和轉碼後存儲桶寫權限的角色,建立運作角色請看文檔;

    E. 點選完成

COS資料工作流+雲函數最佳實踐 - 自定義音視訊轉碼
COS資料工作流+雲函數最佳實踐 - 自定義音視訊轉碼

如需建立運作角色,可以選擇“雲函數”作為角色載體,配置 QcloudCOSFullAccess 權限,或建立角色後自行綁定隻包含存儲桶的權限。

COS資料工作流+雲函數最佳實踐 - 自定義音視訊轉碼
COS資料工作流+雲函數最佳實踐 - 自定義音視訊轉碼

4.回到剛才建立工作流的頁面,選中剛建立的自定義轉碼函數,并儲存工作流,在工作流清單頁開啟工作流。

COS資料工作流+雲函數最佳實踐 - 自定義音視訊轉碼

5.上傳檔案,檢視工作流處理成功後,可以看到上傳的視訊已成功轉碼儲存為新的檔案。

COS資料工作流+雲函數最佳實踐 - 自定義音視訊轉碼

05 結語

更多自定義處理能力,等你來實作!

如果您有使用 COS 工作流 + Serverless 雲函數開發更多有趣功能的想法,請前往: https://cloud.tencent.com/act/pro/cos_scf?from=14774!