關(guān) 閉

新聞中心

EEPW首頁(yè) > 安全與國(guó)防 > 設(shè)計(jì)應(yīng)用 > H.265標(biāo)準(zhǔn)下視頻軟解與硬解的對(duì)比

H.265標(biāo)準(zhǔn)下視頻軟解與硬解的對(duì)比

作者: 時(shí)間:2016-12-22 來(lái)源:網(wǎng)絡(luò) 收藏

1.概念

從數(shù)字視頻誕生以來(lái),硬解碼和軟解碼的說(shuō)法一直伴隨著它的發(fā)展。數(shù)字視頻的軟解碼是指在通用CPU上通過(guò)專門的播放軟件解碼并播放視頻;而硬解碼則是指在專用的硬件解碼模塊解碼視頻,然后將解碼數(shù)據(jù)送至顯示屏播放。嚴(yán)格來(lái)說(shuō),并不存在純粹的硬解碼,因?yàn)榧词褂杏布f(xié)處理模塊存在,整個(gè)解碼過(guò)程也需要軟件來(lái)控制。所以本文所討論的是約定俗稱的軟解碼和硬解碼。

2.歷史

早在20世紀(jì)80年代,數(shù)字視頻商業(yè)化應(yīng)用(Sony的D1格式,http://en.wikipedia.org/wiki/Digital_video#History)已經(jīng)出現(xiàn)。那時(shí)的數(shù)字視頻是未經(jīng)壓縮地存儲(chǔ)在磁帶上,所占空間非常大,其相關(guān)產(chǎn)品極其昂貴,普通消費(fèi)者難以承擔(dān),因此數(shù)字視頻的概念沒(méi)有普及。1992年數(shù)字視頻壓縮標(biāo)準(zhǔn)MPEG-1的發(fā)布,尤其后來(lái)的基于該標(biāo)準(zhǔn)的VCD標(biāo)準(zhǔn)發(fā)布以及相關(guān)產(chǎn)品的問(wèn)世,極大地推動(dòng)了數(shù)字視頻在消費(fèi)領(lǐng)域的發(fā)展,同時(shí)也使數(shù)字視頻的概念在消費(fèi)者中得到了普及。后來(lái)的MPEG-2和基于其上的DVD和數(shù)字電視的普及,讓消費(fèi)者欣賞到更高品質(zhì)的視頻節(jié)目。新世紀(jì)的H264標(biāo)準(zhǔn)和其它私有視頻標(biāo)準(zhǔn)如RM,WMV,VP8格式等,極大促進(jìn)了網(wǎng)絡(luò)視頻的快速發(fā)展。去年新一代標(biāo)準(zhǔn)H.265的推出,標(biāo)志著數(shù)字視頻技術(shù)和產(chǎn)業(yè)達(dá)到了一個(gè)新的高度。

在數(shù)字壓縮標(biāo)準(zhǔn)(技術(shù))不斷進(jìn)步的同時(shí),它的編解碼技術(shù)、手段也有不斷的創(chuàng)新。數(shù)字視頻壓縮標(biāo)準(zhǔn)剛剛誕生的上世紀(jì)90年代初,通用CPU計(jì)算能力遠(yuǎn)遠(yuǎn)無(wú)法滿足解碼需求,所以那時(shí)的解碼方式全部采用專門硬件解碼芯片來(lái)解碼,如VCD播放機(jī)、MPEG-1解壓卡(可以插到386或者486電腦上用來(lái)播放VCD電影)。到了2000年左右,計(jì)算機(jī)的性能已經(jīng)可以播放DVD節(jié)目,這時(shí)涌現(xiàn)出不少優(yōu)秀的DVD播放軟件,可以在個(gè)人計(jì)算機(jī)上流暢地軟解碼DVD數(shù)據(jù)。這一時(shí)期軟解碼和硬解碼都非常流行。此后隨著網(wǎng)絡(luò)的發(fā)展,網(wǎng)絡(luò)視頻發(fā)展迅猛。網(wǎng)絡(luò)視頻的壓縮格式多種多樣,如RM、VP8、MPEG4、H.264、WMV、MPEG2。由于格式的多樣,對(duì)于硬件實(shí)現(xiàn)來(lái)說(shuō),實(shí)現(xiàn)起來(lái)相對(duì)復(fù)雜,另外這一時(shí)期的網(wǎng)絡(luò)終端是個(gè)人電腦,其運(yùn)算能力也足以解碼這些視頻內(nèi)容,所以軟解碼的優(yōu)勢(shì)比較明顯。當(dāng)下,ARM架構(gòu)的通用CPU在移動(dòng)設(shè)備領(lǐng)域取得了X86架構(gòu)在個(gè)人電腦領(lǐng)域那樣的地位。ARM架構(gòu)的CPU主頻也可以達(dá)到1.5GHZ以上,同時(shí)雙核,四核甚至八核的CPU也得到了廣泛的應(yīng)用,其運(yùn)算能力早已達(dá)到或者超過(guò)了以前的PC。視頻軟解方案也大量出現(xiàn)在移動(dòng)設(shè)備中。

3.解碼流程以及軟硬解碼的區(qū)別

數(shù)字視頻軟解碼,是指視頻流數(shù)據(jù)完全通過(guò)通用CPU來(lái)實(shí)現(xiàn)播放。其大致流程如下:首先視頻播放軟件把視頻流文件從存儲(chǔ)介質(zhì)中讀取到內(nèi)存中,然后通過(guò)一個(gè)封裝格式解析模塊,把文件中的視頻數(shù)據(jù)和音頻數(shù)據(jù)分開(kāi);接下來(lái)播放軟件負(fù)責(zé)把視頻數(shù)據(jù)傳送到視頻解碼模塊,音頻數(shù)據(jù)傳送到視頻解碼模塊;視頻解碼模塊也是一個(gè)運(yùn)行在通用CPU上的純粹的軟件模塊,它利用復(fù)雜的算法,實(shí)現(xiàn)對(duì)視頻數(shù)據(jù)的解壓縮;解壓縮之后的數(shù)據(jù)被送到視頻顯示模塊,由顯示模塊驅(qū)動(dòng)硬件來(lái)顯示視頻內(nèi)容。音頻數(shù)據(jù)的處理方式類似。

數(shù)字視頻的硬解碼,則是在專用的解碼硬件模塊協(xié)助之下,CPU完成視頻流數(shù)據(jù)的播放。它的流程是:首先通用CPU負(fù)責(zé)把視頻流數(shù)據(jù)讀到內(nèi)存中,有運(yùn)行在通用CPU上的數(shù)據(jù)封裝格式解析模塊把數(shù)據(jù)中視頻和音頻分開(kāi),其中音頻數(shù)據(jù)被送到專用的硬件解碼模塊中去,由硬件解碼模塊負(fù)責(zé)把視頻數(shù)據(jù)解壓縮,把解壓縮出來(lái)的數(shù)據(jù)又送回通用CPU,由后者用解壓后的數(shù)據(jù)驅(qū)動(dòng)硬件實(shí)現(xiàn)視頻的顯示。而音頻可能是由通用CPU軟解碼,也可能有專門的硬件模塊來(lái)進(jìn)行音頻解碼。

從上述描述中可以看出,不管是硬件解碼或者軟件解碼,通用CPU的參與必不可少,通用CPU負(fù)責(zé)視頻流的播放流程。不同之處是極大運(yùn)算量的解碼算法是在通過(guò)CPU中完成,還是在專用硬件解碼模塊中完成。

4.軟解碼和硬解碼的應(yīng)用

目前壓縮視頻的軟解碼和硬解碼均廣泛存在,然而二者的應(yīng)用領(lǐng)域和范圍有一定差別。

軟解碼主要在下列設(shè)備廣泛應(yīng)用:

(1)個(gè)人計(jì)算機(jī)。目前個(gè)人計(jì)算機(jī)上的視頻全部是通過(guò)軟解碼的形式實(shí)現(xiàn)播放的,這個(gè)和個(gè)人應(yīng)用以及網(wǎng)絡(luò)應(yīng)用中,存在大量的壓縮格式有關(guān),同時(shí)也和目前個(gè)人計(jì)算機(jī)超強(qiáng)的計(jì)算能力密不可分。

(2)智能手機(jī)?,F(xiàn)在的智能手機(jī)芯片都具有很強(qiáng)的計(jì)算能力,同時(shí)也都有視頻硬件解碼模塊,但是硬件解碼模塊支持的視頻格式有限,同時(shí)受限于與之適配的專用播放軟件,所以智能手機(jī)在播放網(wǎng)絡(luò)視頻時(shí),大部分采用是軟解碼方式。

(3)平板電腦。平板電腦普遍采用與智能手機(jī)同樣的芯片組,同時(shí)使用方式也與智能手機(jī)類似,所以在播放網(wǎng)絡(luò)視頻也主要采用軟解碼。

硬解碼主要應(yīng)用于下列設(shè)備:

(1)智能手機(jī)和平板電腦,如前所述,這些設(shè)備存在視頻加速模塊,在播放本地高清文件時(shí),采用硬解碼的情形還是比較多的。

(2)機(jī)頂盒。早期的機(jī)頂盒基本上是一個(gè)MIPS架構(gòu)的CPU+硬件解碼模塊。所以在這種設(shè)備上只存在硬解碼一種情形。不過(guò)最近比較新的機(jī)頂盒采用與智能手機(jī)相同檔次的芯片,但是基于成本考慮,大部分機(jī)頂盒還是采用硬解碼方案。不過(guò)隨著芯片性能提升和價(jià)格的降低,機(jī)頂盒采用軟解碼的比例會(huì)慢慢提升。

(3)家用相機(jī)(攝像和回放功能)。具有攝像功能的相機(jī),都具有回放功能,這些設(shè)備的視頻解碼都是應(yīng)用硬解碼實(shí)現(xiàn)。

(4)視頻會(huì)議。視頻會(huì)議強(qiáng)調(diào)實(shí)時(shí)性,同時(shí)視頻編碼格式唯一,解碼一般是硬解碼

5.趨勢(shì)與展望

硬件解碼的存在是為了彌補(bǔ)通用CPU的運(yùn)算能力的不足。隨著通用CPU的運(yùn)算能力的提升,原來(lái)在通用CPU上無(wú)法完成的解碼任務(wù),也逐漸可以完成,這時(shí)硬件解碼方案就顯得不太重要了。目前的智能手機(jī)芯片軟解碼MPEG-1,MPEG-2視頻數(shù)據(jù)非常流暢,部分手機(jī)軟解碼H.264視頻數(shù)據(jù)也很流暢,所以在智能手機(jī)領(lǐng)域用軟解碼方式也越來(lái)越普遍。但是這并不是說(shuō)明硬解碼方式會(huì)慢慢淡出,因?yàn)槿藗兊囊曨l壓縮比,視頻解析度的需求也在不斷提升,這就要求設(shè)備有更強(qiáng)大的計(jì)算能力,在通用CPU無(wú)法滿足的情況下,硬件解碼模塊也是必不可少的。

去年H.265標(biāo)準(zhǔn)的推出帶來(lái)了硬件解碼與軟件解碼之間的一些爭(zhēng)論,爭(zhēng)論的焦點(diǎn)是在智能手機(jī)上到底H.265硬件解碼會(huì)占主流地位,還是軟件解碼占主流地位。

硬件解碼支持者認(rèn)為,智能手機(jī)芯片計(jì)算能力支持H.265高清播放還比較勉強(qiáng),只有用硬件解碼才能實(shí)現(xiàn)流暢的播放,從成本考慮不必僅僅為了支持H.265而對(duì)主芯片要求更高的性能。軟解碼支持者則從標(biāo)準(zhǔn)成熟度以及通用CPU的性能發(fā)展考慮,認(rèn)為H.265作為一個(gè)比較新的標(biāo)準(zhǔn),會(huì)經(jīng)過(guò)不斷的修訂,如果用硬件解碼方案,可能硬件無(wú)法隨著修訂案不斷地更改,導(dǎo)致硬件無(wú)法解碼有關(guān)視頻,另外通用CPU的性能提升大致符合摩爾定律,性能提升很快。原來(lái)認(rèn)為在ARM架構(gòu)下軟解碼H.265視頻是不太可能的事情,現(xiàn)在看來(lái)是可以實(shí)現(xiàn)的。用紅米手機(jī)(小米公司出品的一款低價(jià)的智能手機(jī),采用MTK6589芯片,四核cotrtex-A71.5G)播放H.265壓縮格式的1080p的視頻,已經(jīng)非常流暢(播放軟件采用的是北京瑞普?qǐng)D視科技有限公司開(kāi)發(fā)的H.265播放apk,視頻播放能到30fps以上)。目前高端手機(jī)普遍采用的是運(yùn)算能力更強(qiáng)的高通驍龍800四核處理器,播放H.265視頻更是沒(méi)有問(wèn)題。



評(píng)論


技術(shù)專區(qū)

關(guān)閉