分布式转码初步方案(hadoop+ffmpeg)
生活随笔
收集整理的這篇文章主要介紹了
分布式转码初步方案(hadoop+ffmpeg)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
分布式轉碼初步方案
背景說明
現有的轉碼方案是一個轉碼worker處理整個視頻的不同清晰度的轉碼,如果一個視頻很大,那這個視頻轉碼將非常耗時。?
因此需要改進方案,要求對大多數格式的視頻可以進行切片后并行轉碼,以此提高一個視頻的轉碼效率。
技術預研
目前搜到的參考資料,基本都是針對某幾個特定格式的分布式轉碼方案。?
當前視頻轉碼基本都依賴于ffmpeg, 目前存在一個問題:?
暫時沒有找到一個合適的方法去無縫切割多種編碼格式的視頻,然后分別對切割出來的分片進行轉碼; 這個過程部分格式正常部分異常(請原諒我是非科班出身)。?
計劃先用low一點的方案實現,ffmpeg可以在一個完整的視頻上,指定視頻區間來進行轉碼,暫時測試了大多數格式的效果都OK;?
那就每個worker的視頻源都是同一個視頻文件,然后并行對不同區間的視頻段進行轉碼,所以就有了下面這個初步方案。
架構方案
幾點說明
- 每個轉碼worker都需要操作整個視頻, 中間涉及到的上傳、下載開銷比較大;
- 多個過程都依賴于rbmq來完成異步轉碼,雖然解耦,但是會增加失敗重轉邏輯的復雜度;
- 如何均衡分配worker是一個關鍵點,比如有些視頻轉碼的優先級比較高,有些視頻比較大可能又需要更多的worker去并行處理轉碼。
最后
架構需要改進,但應該可以在編碼實現和測試的過程中逐步改進;如果最后解決了大多數格式視頻都可以先切割成單獨視頻分片后,再針對分片來進行轉碼及合并的問題,那么就可以減少更多傳輸和存儲開銷,提升性能。
超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生總結
以上是生活随笔為你收集整理的分布式转码初步方案(hadoop+ffmpeg)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ffmpeg与ffserver的协同工作
- 下一篇: 网易视频云分享:如何搭建视频转码集群