《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 其他 > 業(yè)界動(dòng)態(tài) > H.264可擴(kuò)展視頻編解碼器(SVC)應(yīng)用詳解

H.264可擴(kuò)展視頻編解碼器(SVC)應(yīng)用詳解

2008-12-05
作者:Mark Oliver

?

??? 編解碼器" title="編解碼器">編解碼器被用于壓縮視頻,,以減小傳輸視頻流" title="視頻流">視頻流所需要的帶寬,或者,降低把視頻文件存檔所需要的存儲(chǔ)空間,。這種壓縮的代價(jià)就是增大計(jì)算要求:壓縮比越高,對(duì)計(jì)算能力的要求就越高。

?

??? 在帶寬與計(jì)算要求之間做出折中,對(duì)于定義承載編碼視頻流所需要的最小信道帶寬以及編碼設(shè)備的最小指標(biāo)均有影響,。在傳統(tǒng)的像廣播電視機(jī)這樣的視頻系統(tǒng)中,解碼器的最小規(guī)范(在機(jī)頂盒的情形下)易于被定義,。

?

??? 然而,,目前視頻被越來(lái)越多地由各種各樣的應(yīng)用所采用,相應(yīng)地,,有各種各樣的客戶(hù)設(shè)備,,這些設(shè)備包括從計(jì)算機(jī)觀看互聯(lián)網(wǎng)視頻,到便攜式數(shù)字助理(PDA)以及小巧的蜂窩電話(huà),。針對(duì)這些設(shè)備的視頻流必需是不同的,。

?

??? 為了更好地兼容特定的觀看設(shè)備以及信道帶寬,必須采用不同的設(shè)置對(duì)視頻流多次編碼,。每一個(gè)設(shè)置的組合必須向用戶(hù)產(chǎn)生一個(gè)滿(mǎn)足視頻流傳輸所需帶寬的視頻流以及對(duì)觀看設(shè)備進(jìn)行解碼的能力,。如果原始解壓視頻流不可用,那么,,編碼視頻流必須首先被解碼,,然后采用新的設(shè)置進(jìn)行解碼,。這種做法是十分昂貴的,。

?

??? 在理想的情形下,視頻僅僅以高效率的編解碼器被編碼一次,。如果經(jīng)過(guò)解碼的話(huà),,得到的視頻流會(huì)產(chǎn)生全分辨率的視頻。此外,,在理想的情形下,,如果較低分辨率或帶寬的視頻流需要被進(jìn)一步延伸至網(wǎng)絡(luò)之中,以鎖定較低性能的設(shè)備,,那么,,可以不必采取附加的處理,就能夠發(fā)送一小部分的編碼視頻,。這種較小的視頻流便于解碼并產(chǎn)生較低分辨率的視頻,。以這種方式,編碼視頻流自身就能夠適應(yīng)它需要經(jīng)過(guò)的信道帶寬以及目標(biāo)設(shè)備的性能,。這些就是可擴(kuò)展" title="可擴(kuò)展">可擴(kuò)展視頻編解碼器" title="視頻編解碼器">視頻編解碼器的品質(zhì)所在,。

?

H.264 可擴(kuò)展視頻編解碼器

?

??? 擴(kuò)展至H.264的可擴(kuò)展視頻編解碼器(H.264 SVC),被設(shè)計(jì)來(lái)傳遞上述理想情形的各種好處,。它以H.264先進(jìn)視頻編解碼器標(biāo)準(zhǔn)(H.264 AVC)為基礎(chǔ),,并高度利用了原始編解碼器的各種工具以及概念,。然而,它產(chǎn)生的編碼視頻是空間上臨時(shí)可擴(kuò)展的,,并且是在視頻質(zhì)量方面可擴(kuò)展的,。也就是說(shuō),它能夠產(chǎn)生不同幀速率,、分辨率或質(zhì)量等級(jí)的解碼視頻,。

?

??? SVC擴(kuò)展引入了一種原始H.264 AVC編解碼器—在編碼視頻內(nèi)的各層—不存在的概念?;A(chǔ)層對(duì)視頻流的最低臨時(shí),、空間和品質(zhì)表現(xiàn)進(jìn)行編碼。增強(qiáng)各層利用基礎(chǔ)層作為起點(diǎn),,對(duì)附加信息進(jìn)行編碼,,從而在解碼過(guò)程中把編碼結(jié)果用于重構(gòu)高質(zhì)量、高分辨率或,;臨時(shí)的視頻版本,。

?

??? 通過(guò)對(duì)基本層以及僅僅是所需要的后來(lái)增強(qiáng)層進(jìn)行解碼,解碼器能夠以所希望的特征產(chǎn)生一種視頻流,。圖1所示為H.264 SVC流的分層結(jié)構(gòu),。在編碼的過(guò)程中,要利用僅僅對(duì)較低級(jí)各層的參考,,小心地解碼一個(gè)特殊層,。以這種方式,編碼流可以在任意點(diǎn)被刪節(jié),,但是,,仍然維持有效的、可解碼的視頻流,。

?

?

圖1:H.264 SVC分層結(jié)構(gòu)

?

??? 這種分層方法讓所生成的一個(gè)編碼流能夠被刪節(jié)以限制所消耗的帶寬或者降低解碼計(jì)算的要求,。刪節(jié)過(guò)程完全通過(guò)從編碼視頻流提取所需要的各層而構(gòu)成。這個(gè)過(guò)程甚至能夠在網(wǎng)絡(luò)中執(zhí)行,。


圖2:調(diào)節(jié)等級(jí)以降低帶寬和分辨率

?

??? 也就是說(shuō),,隨著視頻流從高帶寬轉(zhuǎn)換為較低帶寬的網(wǎng)絡(luò)(例如,通過(guò)WiFi鏈路從以太網(wǎng)轉(zhuǎn)換至手持),,要針對(duì)可用的帶寬調(diào)節(jié)視頻流的大小,。在上述例子中,要針對(duì)無(wú)線(xiàn)鏈路的帶寬調(diào)節(jié)視頻流的大小以及手持解碼器的解碼能力,。圖2顯示了個(gè)人電腦把低帶寬的視頻流轉(zhuǎn)為為移動(dòng)設(shè)備視頻流的例子,。

?

H.264 SVC揭秘

?

??? 為了實(shí)現(xiàn)臨時(shí)的可擴(kuò)展性" title="可擴(kuò)展性">可擴(kuò)展性,H.264 SVC鏈接其參考幀以及預(yù)測(cè)幀,這與傳統(tǒng)的H.264 AVC編碼器稍微不同,。SVC采用分層預(yù)測(cè)結(jié)構(gòu),,如圖3所示,而不是傳統(tǒng)的內(nèi)幀(I幀),、雙向幀(B幀)以及預(yù)測(cè)幀(P幀)的關(guān)系,。

?

圖3:傳統(tǒng)的I、P和B幀的關(guān)系

?

??? 分層結(jié)構(gòu)定義最終視頻流的臨時(shí)分層,。圖4描述了可能的分層結(jié)構(gòu),。在這個(gè)特殊的例子中,各幀僅僅根據(jù)上次出現(xiàn)的各幀進(jìn)行預(yù)測(cè),。這就確保該結(jié)構(gòu)不僅僅展示臨時(shí)的可擴(kuò)展性,,而且顯示了低的延遲。

?

?

?

圖4:在SVC中的分層預(yù)測(cè)幀

?

??? 這個(gè)方案具有四個(gè)嵌套的臨時(shí)層:T0 (基礎(chǔ)層),、T1,、T2和T3。由T1和T2各層構(gòu)成的幀僅僅由T0層中的各幀預(yù)測(cè),。在T3層中的各幀僅僅由T1或T2各層中的各幀來(lái)預(yù)測(cè),。

?

??? 為了以3.75幀每秒的速度播放編碼幀,僅僅構(gòu)成T0的各幀需要被解碼,。所有的其它各幀可以被丟棄,。為了以7.5fps的速度播放,要對(duì)構(gòu)成T0以及T1的各層進(jìn)行解碼,。在T2和T3中的各幀被丟棄,。類(lèi)似地,如果構(gòu)成T0,、T1和T2的各幀被解碼,,所得到的視頻流將以15fps的速度播放,。如果所有幀均被解碼,,那么,完全的30fps視頻流被恢復(fù),。

相比之下,,在H.264 SVC(對(duì)于Baseline Profile來(lái)說(shuō),僅僅雙向預(yù)測(cè)幀被應(yīng)用)中,,不管需要的顯示率是什么,,所有幀均需被解碼。為了轉(zhuǎn)換至一個(gè)低帶寬網(wǎng)絡(luò),,整個(gè)視頻流均需要被解碼,,不需要的幀可以被丟棄,然后,重新編碼,。

?

??? 在H.264 SVC中的空間可擴(kuò)展性遵循類(lèi)似的原則,。在這一情形下,較低分辨率的各幀被編碼為基礎(chǔ)幀,。經(jīng)解碼和上行采樣的基礎(chǔ)幀被用于對(duì)較高階各層進(jìn)行預(yù)測(cè),。重構(gòu)原始場(chǎng)景細(xì)節(jié)所需要的附加信息被編碼為一個(gè)獨(dú)立的增強(qiáng)層。在某些情形下,,重用運(yùn)動(dòng)信息能夠進(jìn)一步增加編碼效率,。

?

同時(shí)聯(lián)播與SVC

?

??? 在H.264 SVC中存在于可擴(kuò)展性相關(guān)的開(kāi)銷(xiāo)。正如我們?cè)趫D3中所看到的那樣,,參考幀與預(yù)測(cè)幀之間的距離在時(shí)間(例如從T0至T1)上比傳統(tǒng)的幀結(jié)構(gòu)要長(zhǎng),。在具有高運(yùn)動(dòng)圖像的場(chǎng)景中,這能夠?qū)е滦噬缘偷膲嚎s,。為了對(duì)視頻流各層級(jí)結(jié)構(gòu)進(jìn)行管理,,也存在相關(guān)的開(kāi)銷(xiāo)。

?

??? 整體而言,,跟不具備可擴(kuò)展性的全分辨率以及全幀速率視頻構(gòu)成的H.264視頻流相比,,具有三層臨時(shí)可擴(kuò)展性以及三層空間可擴(kuò)展性的SVC視頻可能要大20%以上。如果采用H.264 編解碼器對(duì)可擴(kuò)展性進(jìn)行仿真,,就需要多個(gè)編碼視頻流,,從而導(dǎo)致更高的帶寬要求或貫穿網(wǎng)絡(luò)的昂貴解碼和二次編碼。

SVC的額外好處:

?

誤碼恢復(fù)

?

??? 誤碼恢復(fù)的傳統(tǒng)實(shí)現(xiàn)方法是把附加的信息添加至視頻流之中,,以便監(jiān)測(cè)和校正誤碼,。SVC的分層方法意味著不需要增加大的開(kāi)銷(xiāo),就可以在較小的基本層上執(zhí)行高級(jí)別的誤碼監(jiān)測(cè)和校正,。如果要把相同程度的誤碼監(jiān)測(cè)和校正功能應(yīng)用于AVC視頻流中,,那就需要把整個(gè)視頻流保護(hù)起來(lái),從而導(dǎo)致視頻流更大,。如果在SVC視頻流中監(jiān)測(cè)出誤碼,,那么,就可以逐漸讓分辨率和幀速率退化,,直至—如果需要的話(huà)—只有高度受保護(hù)的基礎(chǔ)層才可以使用,。按照這一方式,在噪聲條件下的退化要比在H.264 AVC環(huán)境下更讓人可以接受,。

?

存儲(chǔ)管理

?

??? 因?yàn)镾VC視頻流或文件即使在被刪節(jié)的情況下仍然可被解碼,,SVC既可以在傳輸過(guò)程之中、也可以在文件被存儲(chǔ)之后采用,。把被分解的文件存儲(chǔ)在光盤(pán)上并取消增強(qiáng)層,,就可以在不對(duì)存儲(chǔ)在文件中的視頻流進(jìn)一步處理的情況下,,壓縮文件的大小。這對(duì)于需要“要么全部管,、要么不管”的方法進(jìn)行光盤(pán)管理的AVC文件來(lái)說(shuō)是不可能的,。

內(nèi)容管理

?

??? SVC視頻流或文件固有地包含較低分辨率以及幀速率的視頻流。這些視頻流可以被用于加速視頻分析的應(yīng)用或分類(lèi)各種算法,。臨時(shí)可擴(kuò)展性也使得視頻流易于以快速進(jìn)退的方式搜索,。

?

??? H.264 SVC的典型應(yīng)用是監(jiān)控系統(tǒng)(Stretch公司在這個(gè)領(lǐng)域提供市場(chǎng)領(lǐng)先的解決方案,請(qǐng)?jiān)L問(wèn)其網(wǎng)站了解更多的細(xì)節(jié)),。以IP攝像機(jī)把視頻饋入視頻內(nèi)容被存儲(chǔ)的控制間的情況為例,,在視頻流上要運(yùn)行基本運(yùn)動(dòng)監(jiān)測(cè)分析。在控制間顯示器上,,以攝像機(jī)最大的分辨率(1280 x 720)觀看饋入的視頻,,并以D1 (720 x 480)的分辨率存儲(chǔ)在保存光盤(pán)空間上。第一反應(yīng)團(tuán)隊(duì)也在現(xiàn)場(chǎng)反應(yīng)車(chē)內(nèi)的移動(dòng)終端上接入視頻流,。那些顯示器的分辨率是CIF (352 x 240),,而視頻流的伺服速率為7fps。

?

??? 在利用H.264 AVC實(shí)現(xiàn)的過(guò)程中,,首要約束可能就是該攝像機(jī)伺服多個(gè)視頻流,。在這個(gè)例子中,一個(gè)分辨率為1280x720,,而另一個(gè)分辨率為720 x 480,。在就給攝像機(jī)增加了額外的成本,但是,,讓視頻流可以在控制間被直接記錄,,與此同時(shí),另一個(gè)視頻流被解碼和顯示,。

?

??? 如果沒(méi)有這一功能,,那就需要采用昂貴的解碼、重定尺寸以及重新編碼步驟,。D1流也可以被解碼并重新調(diào)節(jié)大小,,以轉(zhuǎn)換為CIF分辨率,從而饋入在視頻流上運(yùn)行的視頻分析(工具)上,。CIF分辨率在時(shí)間上驟減以實(shí)現(xiàn)每秒7幀以及重新編碼,,以便讓第一反應(yīng)車(chē)通過(guò)無(wú)線(xiàn)鏈路加以利用。圖5顯示了利用H.264 AVC可能實(shí)現(xiàn)的一個(gè)系統(tǒng),。

圖5:H.264 AVC的視頻監(jiān)控應(yīng)用。

?

??? 利用H.264 SVC編解碼器,,就可以放寬對(duì)攝像機(jī)伺服多個(gè)視頻流的要求,,降低系統(tǒng)復(fù)雜性,,壓縮攝像機(jī)與控制間之間的網(wǎng)絡(luò)帶寬。完整的1280 x 720視頻流現(xiàn)在可以被存儲(chǔ)在網(wǎng)絡(luò)視頻刻錄機(jī)(NVR)上,,這些文件可以被方便地分解,,以創(chuàng)建D1(或CIF)視頻流,從而在給定的時(shí)期之后把光盤(pán)空間騰空出來(lái),。CIF視頻流可以直接由NVR伺服,,以實(shí)現(xiàn)分析工作,而降低了幀速率的第二視頻流可以被提供給第一反應(yīng)車(chē)使用,。圖6顯示了H.264 SVC的一種可能的實(shí)現(xiàn)方案,。

圖6:H.264 SVC視頻監(jiān)控應(yīng)用。

?

??? 因此,,根本沒(méi)有必要在視頻流本身上進(jìn)行操作,,在業(yè)已存儲(chǔ)的文件上進(jìn)行操作就足夠了。其優(yōu)勢(shì)是明顯的:

  • ?壓縮網(wǎng)絡(luò)帶寬,;
  • 具有靈活的存儲(chǔ)管理,;
  • 取消了昂貴的解碼以及二次編碼的步驟;
  • 如果需要的話(huà),,在NVR上的高清晰度視頻可以用來(lái)歸檔,;
  • ?

    ?

    本文小結(jié)

    ?

    ??? 可擴(kuò)展視頻編解碼器已經(jīng)被開(kāi)發(fā)了許多年。廣播行業(yè)嚴(yán)格地受到業(yè)已建立的各種標(biāo)準(zhǔn)的控制,,因此在采用這一技術(shù)上一直反應(yīng)遲緩,。處理器、傳感器以及顯示技術(shù)的進(jìn)步正在點(diǎn)爆各種視頻應(yīng)用,?;ヂ?lián)網(wǎng)以及IP技術(shù)正無(wú)縫地把視頻伺服至更為不同和遠(yuǎn)程的由顯示設(shè)備構(gòu)成的社群??蓴U(kuò)展視頻編解碼器----如H.264 SVC滿(mǎn)足了許多這些系統(tǒng)的需求,,并且它們可能促使視頻被廣泛采納為通信媒介的催化劑。

    ?

    關(guān)于作者

    ?

    ??? Mark Oliver是Stretch公司的產(chǎn)品市場(chǎng)營(yíng)銷(xiāo)總監(jiān),。作為英國(guó)本地人,,Oliver在利茲大學(xué)獲得了電氣和電子工程學(xué)為。在就職于惠普公司的十年期間,,他在歐洲和美國(guó)曾經(jīng)管理惠普公司的工程和制造功能部門(mén),,之后,在一些與視頻相關(guān)的初創(chuàng)公司中領(lǐng)導(dǎo)產(chǎn)品市場(chǎng)營(yíng)銷(xiāo)以及應(yīng)用活動(dòng),。在加盟Stretch公司之前,,他曾任賽靈思公司DSP部門(mén)內(nèi)部視頻與成像產(chǎn)品的市場(chǎng)營(yíng)銷(xiāo)管理人員。

    本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn),。轉(zhuǎn)載的所有的文章、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容,、版權(quán)和其它問(wèn)題,,請(qǐng)及時(shí)通過(guò)電子郵件或電話(huà)通知我們,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失,。聯(lián)系電話(huà):010-82306118;郵箱:[email protected],。