1. 程式人生 > >視訊內容快速轉碼解決方案

視訊內容快速轉碼解決方案

在這個網際網路視訊年代,大量的視訊網站興起,人們的視訊消費習慣已經養成,大量的視訊內容不斷產生。然而,如何將這些內容在網際網路上快速釋出已經成為了一項棘手的事情。特別是高清視訊開始普及後,錄製1小時的1080P高清視訊有10GB的容量,上傳到視訊網站釋出需要佔用大量的時間。僅此,將視訊進行快速轉碼快速釋出成為普遍需求。

順景科技作為一家專注於視音訊編解碼技術和流媒體技術研發的公司,在2008年線上視訊還未大規模火爆之前就已經看到了這種趨勢,因此很早就開始了視訊轉碼方面的研究。在2009年,我們著手開發視訊轉碼大師(將各種格式的視訊檔案轉換成H.264編碼的mp43GP檔案),並於20106月推出2.0版,

20114月成功推出3.0版,推出後不斷吸收使用者意見,持續改進。由於該工具受到使用者的普遍歡迎,這就促使我們不斷對轉碼技術進行升級。

如今,該轉碼系統已升級到5.0版本,該系統結合了雲端計算思想,採用MapReduce等分散式計算技術構造一個由多臺機器協同工作的雲轉碼平臺,達到超快速乃至實時轉碼的目的,為節目的快速釋出提供了堅實的技術保障。

先鋒雲轉碼伺服器可以將各種格式的媒體流和視音訊檔案轉換為國際標準的視音訊流和MP4檔案格式(視訊支援H.264H.265編碼,音訊支援AAC編碼),轉碼過程由轉碼排程伺服器排程多臺轉碼伺服器完成節目批量轉碼工作,轉碼伺服器採用多核心、多執行緒、多工的方式進行格式轉換處理,並可根據實際使用需求,採用檔案分段轉碼模式完成對使用者最短時間完成轉碼的需求,轉碼伺服器採用

CUDA和自主開發的專用硬體加速裝置完成轉碼過程,實現了轉碼質量和轉碼效率的雙重提升。

先鋒高速轉碼伺服器通過轉碼任務處理軟體,方便使用者完成批量轉碼工作,同時基於REST架構模式提供一系列的Web API介面,便於與第三方應用系統整合整合。

轉碼-1.png

1.先鋒高速轉碼伺服器工作方式

1.1.11B雲轉碼服務模式

轉碼工作方式:使用者首先將各種媒體流【包括實時的直播流和檔案流】提交給JobTracker伺服器,JobTracker伺服器完成檔案的分片工作然後將各個子任務提交給轉碼伺服器進行轉碼工作,完成轉碼後將實時的直播節目流再以流的方式進行輸出,將檔案流以mp4檔案格式進行儲存並上傳到ReduceTask伺服器完成檔案的合併工作,最終提交到業務應用平臺供使用者使用。

轉碼-2.jpg

轉碼-3.png

資料流說明:

u實時流轉碼:

1.使用者將前端節目流推送給先鋒雲轉碼伺服器;

2.先鋒雲轉碼伺服器根據使用者預先設定的轉碼條件,進行節目流的高速實時轉碼工作,可同時以多種解析度和多碼流進行格式轉換;

3.將轉換後的節目流以多協議方式輸出,同時,節目流可以向多目標同時輸出;

4.節目流可以在輸出的同時進行錄製儲存

5.節目轉碼過程中可以實現插播功能,比如插入字幕、角標等資訊。

1.檔案轉碼:

2.使用者將前端節目源提交到 JobTracker

3.JobTracker 將檔案分片,分配給MapTask

4.MapTaskJobTracker下載分配給它的檔案分片,並將該分片轉碼成完整的mp4檔案,同時上傳到ReduceTask

5.ReduceTask將所有轉碼後的mp4檔案分片合併成目標檔案,並提交到Web Server

6.使用者從Web Server 下載、點播轉碼後的檔案

節點說明:

1.JobTrack負責對TaskTracker(包括MapTaskReduceTask)的任務排程

2.一臺MapTrack伺服器可以有一個或多個轉碼單元,轉碼單元數和轉碼時間有一個線性反比關係,故此我們藉助於專業的硬體轉碼技術,大幅提高單機支援的轉碼單元數。

簡單起見,ReduceTask可以和JobTacker部署在同一臺機器上。

2.先鋒高速雲轉碼平臺功能特點

2.1.13B裝置支援廣泛

支援各種輸入裝置,包括衛星訊號、廣播電視訊號接收裝置,硬碟檔案,CD(包括DTS)、VCD、DVD裝置等;

支援各種主流的視音訊格式,包括mpeg1/2/4,H.264,H.265,rm/rmvb、wmv、mov、mts等;

支援各種輸出引數設定,系統內建主流裝置輸出引數模板,包括PCAndroid手機、iPhone手機、iPodiPadAppleTVPSPPS3等。

表格一、支援的裝置與檔案格式

轉碼支援格式.png

表格二、核心引數設定

轉碼技術引數.png

2.2.轉碼功能支援全面

1.支援多音軌技術,可保留原始檔的所有音軌。

2.支援字幕轉碼,包括原始檔中的內嵌字幕和外掛字幕。

3.支援反交錯處理,自動對源視訊進行反交錯處理,提高視訊清晰度。

4.支援新增文字、圖片水印

5.支援自動抽取字幕檔案,生成webvtt格式

6.自動按照設定的時間間隔自動生成劇照,且生成webvtt檔案

7.支援Apple HTTP Live Streaming輸出。

8.支援MP4索引位置輸出到檔案頭,更有利於網路播放。

表格三、支援的字幕格式

支援的字幕格式.png

2.3.轉碼速度優異

支援硬體編解碼加速:採用大規模平行計算技術,大幅提升轉碼效能。比傳統的轉碼方式要高出數十倍。

智慧檢測機器硬體效能,根據策略啟動多個轉碼程序,每個程序啟動多個轉碼執行緒同時轉碼,充分利用多核、多程序、多執行緒的優勢提升轉碼效能。

支援分段轉碼:可以將一個檔案精確分成多段利用多核同時轉碼,快速合併成整個檔案。

根據實際測試,當前單臺伺服器的專業版在轉碼1080P高清節目源時可以達到H.264 x30倍速,H.265 x 4倍速使用多伺服器平行計算,轉碼速度會呈線性增長。

720P高清節目可以達到H.264 x60倍速,H.265 x 8倍速!

3.效能指標

3.1.專業版

硬體:Intel E5-2650 *216GB記憶體,專業硬體加速模組x 2

效能指標:高清(1920 X 1080H.264 x 30倍速轉碼,H.265 x 4倍速轉碼

表格四、標準版與MediaCoder的對比測試報告

速度比較.jpg

4.API介面

先鋒雲轉碼平臺所有介面基於REST架構,以API的方式提供。主要包括:

4.1.19B認證介面

提供身份認證相關的介面,包括會話登入,退出,狀態查詢等。

4.2.20B事務介面

包括檔案上傳介面、檔案下載介面、節目預覽介面(包括自動擷取海報)、提交任務介面(包括任務名稱、請求資源數、轉碼後文件儲存位置等任務設定)、任務進度檢視介面(包括分段進度、整體進度、CPU佔用、GPU佔用、記憶體佔用等)

5.5B市場同類產品分析

目前基於雲轉碼或者分散式叢集轉碼的方案主要有以下四種:

1、CPU方案

完全基於CPU編碼,採用伺服器叢集的方式實現轉碼並行,有部分支援檔案分段。轉碼速率比較好的能做到H.264  1080P高清3倍速。

2、CPU+CUDA方案,CUDA為主

CPU僅負責排程(故此CPU佔用率低),編解碼由CUDA實現。代表廠商:美國elemental。目前能做到H.264 1080P高清12倍速。

3、CPU+CUDA+專用硬體加速模組 方案,平衡排程

CPU負責呼叫和任務分割與整合,CUDA和專用硬體加速模組負責編轉碼,這樣可以最大限度利用伺服器資源,先鋒雲轉碼平臺就採用這種方式,目前能做到H.264 1080P高清32倍速, H.265 1080P高清4倍速

4、虛擬機器方式

基於現有的hadoop之類的雲架構,採用虛擬機器方式構建雲轉碼系統。這是四種方案中資源利用率最低的,優點是可以充分利用雲架構的特性,擴充方便。目前能做到1080P高清2倍速。

備註:

因為編轉碼是高運算的應用,尤其是如果對轉碼速度還有要求的話,這樣在很短的時間內要將大量的視訊壓縮完成,需要高密度運算,也就是需要CPU和專用轉碼核心的密切配合才能完成。如果採用虛擬機器方案,等於人為地增加了一箇中間層,勢必大大影響效能。

6.6B先鋒雲轉碼平臺優勢

 6.1.21B採用適合轉碼應用的MapReduce架構

對轉碼應用來說,原始視訊檔案大小一般較大,尤其是一些高清視訊,而憑藉公司在網路流媒體領域多年的技術積累,對MapReduce架構做了特殊優化,以滿足轉碼應用的需要。

6.2.22B完美支援多種格式的分片、轉碼與合併

目前也有一些公司或者個人藉助於開源的ffmpeg等實現視訊的分片轉碼,但是因為開源軟體的侷限,產品穩定性很差,並且轉碼速度難以提升,而且分片合併後的檔案在銜接處經常伴有雜音、重複出現,非常影響轉碼效果。而公司因為近十年來一直從事於視音訊編解碼方面的研發,對各種主流視訊的編解碼格式都非常熟悉,可以對這些格式做到很好的支援,轉碼後的檔案無雜音、無重複。

轉碼結構圖.png

6.3.配合專業級的硬體加速模組提升轉碼效能

CPU和專業級別的硬體加速模組配合,可以實現轉碼速度的大幅提升。

7.與數字資源釋出系統無縫整合

先鋒雲轉碼伺服器可以和多媒體資源應用平臺及其它第三方資源應用平臺結合,上傳節目後自動轉換格式,供平臺呼叫。對於上傳到多媒體資源應用平臺的視音訊檔案、文字類檔案,系統自動呼叫轉碼服務進行格式轉換,轉換完成後,自動新增到平臺中,提供視音訊檔案的mp4轉換、文字檔案轉換為html5格式,提供線上瀏覽服務。

轉碼和平臺結合.jpg

轉碼過程:使用者上傳需轉碼的視音訊檔案,並設定轉碼檔案格式,系統標誌需要轉碼的檔案,由轉碼排程伺服器定時輪詢多媒體資源應用系統,檢視是否有新增的轉碼任務,當轉碼排程伺服器檢測到系統有新的轉碼任務時,啟動轉碼服務程序進行轉碼,完成轉碼後將轉碼檔案傳回多媒體資源應用系統。

8.轉碼伺服器硬體檢視

檢視-1.png

檢視-2.png

l高效能伺服器、關鍵任務應用伺服器、企業伺服器、石油&天然氣、金融、廣電、電信、生物科學;

l雙路英特爾至強 E5-2650系列處理器;R型插座(LGA2011)

l42.5’’熱插拔SATA2/3硬碟位

l8個記憶體插槽,最大支援256GB DDR3 1600MHz reg. ECC記憶體

l3x16PCI-E 3.01x8 PCI-E 3.0x16)插槽

l支援3GPU/MIC模組(選配)

lI/O介面:21GB/10GBTRFT)網路介面,1VGA介面,1COM/串列埠,2USB 2.0介面

l系統管理:整合專用遠端管理功能——IPMI2.0

l10個高轉速對流風扇,並具備優秀的溫控管理

l1800W鉑金級認證高效冗餘電源(TRFTRFT

l1800W鉑金級認證高效電源(TSF

9.與市場主流廣電行業轉碼伺服器的功能和效能比較

對比-1.png

比較-2.png