攻克難關(guān),高清視頻編解碼技術(shù)難點(diǎn)在哪?
發(fā)布時(shí)間:2017-09-13 責(zé)任編輯:susan
【導(dǎo)讀】眾所周知,高清視頻相對(duì)于rmvb、DVD等標(biāo)清視頻,播放起來對(duì)于電腦硬件要求的提升是無疑的。那么高清視頻編解碼的技術(shù)難點(diǎn)在哪?本文用三個(gè)方法來幫你攻克難關(guān)。
一、下面我們先來看看高清視頻究竟從哪些方面提升了要求
(一)首先便是視頻流量的加大。這是最為直觀的一個(gè)提升元素,我們可以參照下面的表格,表格中只是簡單的提出了“視頻源”的流量對(duì)比,但其實(shí)高清視頻的“不同格式”更決定了流量的不同。
可以看出,DVD視頻的數(shù)據(jù)流量只有約9.5Mb/s,但是最高的藍(lán)光可以達(dá)到40Mb/s以上,提升了4倍以上,無疑這是硬件配置提升的一個(gè)主要原因,因?yàn)樾枰幚淼臄?shù)據(jù)量增大了很多。
(二)其次便是編碼格式的復(fù)雜度。我們知道每種編碼格式都有其自身的算法,優(yōu)秀的算法可以將視頻壓縮到更小的體積,但是還原這種算法卻需要更強(qiáng)的計(jì)算能力。H.264高清編碼格式就是典型的代表。也許有些讀者會(huì)碰到一些高清視頻,但是播放要求并不高,那可能它就是采用一些簡單的算法,比如Mpeg2的高清編碼格式,但是遇到類似H.264編碼格式,就會(huì)出現(xiàn)無法流暢播放的情況。
現(xiàn)在看來,H.264因?yàn)閮?yōu)秀的算法取得了廣泛的支持,它的算法雖然復(fù)雜,但是能獲得最高的壓縮同時(shí)視頻細(xì)節(jié)損失很小,因此想要在未來流暢的播放高清視頻,H.264編碼視頻是必須通過的一個(gè)考驗(yàn)。當(dāng)然我們也不能忽視VC-1編碼,它是微軟力推的編碼格式,也受到了廣泛的支持,其要求雖然略低,但同樣造成了目前很多主流電腦的“播放困難”。至于Mpeg2高清編碼,其要求很低,未來發(fā)展的前景也不突出。
我們?cè)賮砹私庖幌?,這些編碼在電腦上是如何被處理器的。視頻編碼的處理一般分為幾個(gè)步驟,每個(gè)步驟會(huì)完成相應(yīng)的任務(wù),而解碼的時(shí)候也會(huì)存在這些步驟,從而達(dá)成影片的順利播放。那么誰來處理這些工作呢,早期在電腦上,解碼播放的大部分步驟都是CPU來處理,也就是處理器軟件解碼(以下簡稱軟解)播放,這也就是CPU占用率為什么會(huì)很高的原因。
簡單的來說,目前任何一臺(tái)主流電腦或者說哪怕幾年前的電腦,使用處理器軟解播放之前所有的標(biāo)清視頻都沒有任何問題。而高清視頻中,Mpeg2高清編碼的視頻要求最低,VC-1編碼的視頻其次,而要求最高的H.264高清視頻可能會(huì)導(dǎo)致很多老式的電腦都無法流暢播放。
雖然現(xiàn)在硬件發(fā)展速度飛快,用戶可以采用高檔四核處理器把軟解播放高清的CPU占用率控制在50%以下,但這類處理器的價(jià)格卻很高,裝機(jī)成本大幅增加。而雙核處理器雖然便宜了不少,但軟解播放的CPU占用率又可能會(huì)很高,甚至高到無法流暢播放的程度。
如果想要減輕CPU的負(fù)擔(dān),則必須有另一個(gè)配件來接手編碼處理工作,顯卡自然成為了最佳選擇,也就是用顯卡里的引擎替代CPU完成視頻解碼的處理任務(wù),從而釋放CPU的負(fù)載。CPU作為通用處理器,進(jìn)行視頻解碼這類事效率有限,但是顯卡卻可以直接硬件集成視頻解碼引擎,從而達(dá)到極高的功效。
二、高清視頻的編碼流程
那么究竟高清編碼的步驟有哪些,哪些又是負(fù)載最高的部分呢?以H.264視頻舉例而言,分為四個(gè)主要部分(見下圖)。圖中的四個(gè)方塊基本就是H.264解碼的四個(gè)最主要步驟,也是資源消耗的主要四個(gè)部分,其中又以第一步的“CAVLC/CABAC解碼”最為消耗運(yùn)算資源,這方面遠(yuǎn)高于其他三步(簡單的說,CAVLC/CABAC是H.264編碼規(guī)范中兩種不同的算法,際俏了提高壓縮比,其中CABAC比CAVLC壓縮率更高,但解碼時(shí)自然也要求更高)。
三、高清視頻的解碼流程
我們下面來看看主流的3種編碼格式,包括Mpeg2、VC-1、H.264的解碼流程對(duì)比(見下圖)??梢钥闯?,幾種編碼格式還是有不少區(qū)別的,這也是造成幾種編碼格式要求不同的原因,H.264編碼格式最為復(fù)雜,因此系統(tǒng)要求最高,VC-1略有降低,但是也比Mpeg2高得多。
其它編碼格式與H.264類似。
四、高清解碼資源消耗分析
那么究竟哪個(gè)步驟最為消耗CPU占用率呢?下面的測(cè)試對(duì)比應(yīng)該最能說明問題(見下圖)。對(duì)比的視頻包括Mpeg2和H.264(AVC),其中上面我們講到的四個(gè)步驟都有涉及。顯而易見,“流處理”是所有編碼格式中最為消耗處理器運(yùn)算的部分,但是Mpeg2視頻的這部分還并不會(huì)造成很大的困擾,因?yàn)镃PU的占用率還不到2%。
但是對(duì)于H.264來說,問題就出現(xiàn)了,20Mb/s編碼率的視頻流處理過程就會(huì)達(dá)到不小的CPU占用率,40Mb/s的高編碼率視頻更為夸張,流處理的過程CPU占用率上升極快,加上別的處理,總CPU占用率很高毫不奇怪。
上文已經(jīng)提到,這四個(gè)步驟的處理配件不同,主要是CPU和顯卡。在之前,CPU因?yàn)樘幚砹烁嗟牟襟E,所以占用率高居不下,因此如果顯卡能承擔(dān)越多的解碼步驟,CPU就能釋放更多的負(fù)載,以保證視頻播放的流暢。
下圖H.264的解碼過程很好的說明了問題。如果顯卡不承擔(dān)任何步驟(圖解第一行),那么CPU占用率很高,甚至根本無法流暢播放;如果顯卡能實(shí)現(xiàn)后兩個(gè)步驟的解碼處理(圖解第二行),CPU可以獲得部分解放,但是對(duì)于比較關(guān)鍵的、負(fù)載最大的“流處理”,部分顯卡還不能實(shí)現(xiàn),所以CPU占用率有所下降,但是仍然偏高。
通過具有H.264硬件解碼引擎的顯卡,就可以完成H.264編碼的全部4個(gè)處理步驟(圖解第三行),也就是實(shí)現(xiàn)全程解碼,這就是它們能讓H.264高清視頻播放的CPU占用率大幅度下降的根本原因。既然顯卡完成了所有的高清解碼處理,那么CPU自然就空閑了。而我們所謂的部分解碼,就是CPU仍然承擔(dān)一定的處理任務(wù),因此占用率仍然要高出不少。
特別推薦
- 兆易創(chuàng)新GD32F30x STL軟件測(cè)試庫獲得德國萊茵TüV IEC 61508功能安全認(rèn)證
- 芯科科技第三代無線開發(fā)平臺(tái)引領(lǐng)物聯(lián)網(wǎng)發(fā)展
- MSO 4B 示波器為工程師帶來更多臺(tái)式功率分析工具
- 艾為電子推出新一代高線性度GNSS低噪聲放大器——AW15745DNR
- 瑞薩發(fā)布四通道主站IC和傳感器信號(hào)調(diào)節(jié)器, 以推動(dòng)不斷增長的IO-Link市場(chǎng)
- e絡(luò)盟現(xiàn)貨供應(yīng) Abracon 新推出的 AOTA 系列微型鑄型電感器
- 加賀富儀艾電子推出支持Wi-Fi 6和藍(lán)牙的無線局域網(wǎng)/藍(lán)牙組合模塊
技術(shù)文章更多>>
- 第7講:SiC單晶襯底加工技術(shù)
- 羅德與施瓦茨中標(biāo)中國移動(dòng)RedCap以及Cat1bis一致性測(cè)試系統(tǒng)項(xiàng)目
- 【“源”察秋毫系列】柔性可穿戴電子設(shè)備材料的導(dǎo)電測(cè)試
- 低功耗藍(lán)牙賦能的太陽鏡為摩托車手提供免分心導(dǎo)航體驗(yàn)
- 讓汽車LED照明無死角,LED驅(qū)動(dòng)的全面進(jìn)化
技術(shù)白皮書下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動(dòng)避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索