關于H.264視頻編碼傳輸?shù)腝oS特性分析
H.264標準繼承了以前視頻編碼標準中某些優(yōu)秀的錯誤恢復工具,同時也改進和創(chuàng)新了多種錯誤恢復工具。這里主要介紹H.264的錯誤恢復工具,包括參數(shù)集、靈活的宏塊排序和冗余片RS等。
1. 參數(shù)集
參數(shù)集是H.264標準的一個新概念,是一種通過改進視頻碼流結構增強錯誤恢復能力的方法。H.264的參數(shù)集又分為序列參數(shù)集和圖像參數(shù)集。其中,序列參數(shù)集包括一個圖像序列的所有信息,即兩個IDR圖像間的所有圖像信息。圖像參數(shù)集包括一個圖像的所有分片的所有相關信息,包括圖像類型、序列號等,解碼時某些序列號的丟失可用來檢驗信息包的丟失與否。多個不同的序列和圖像參數(shù)集存儲在解碼器中,編碼器依據(jù)每個編碼分片的頭部的存儲位置來選擇適當?shù)膮?shù)集,圖像參數(shù)集本身也包括使用的序列參數(shù)集參考信息。
眾所周知,一些關鍵信息比特的丟失(如序列和圖像的頭信息)會造成解碼的嚴重負面效應,而H.264把這些關鍵信息分離出來,憑借參數(shù)集的設計,確保在易出錯的環(huán)境中能正確地傳輸。這種碼流結構的設計無疑增強了碼流傳輸?shù)腻e誤恢復能力。
參數(shù)集具體實現(xiàn)的方法也是多樣化的:(1)通過帶外傳輸,這種方式要求參數(shù)集通過可靠的協(xié)議,在首個片編碼到達之前傳輸?shù)浇獯a器;(2)通過帶內傳輸,這需要為參數(shù)集提供更高級別的保護,例如發(fā)送復制包來保證至少有一個到達目標;(3)在編碼器和解碼器采用硬件處理參數(shù)集。
2. 片、片組和FMO
一幅圖像由若干片組成,每片包含一系列的宏塊(MB)。MB的排列可按光柵掃描順序,也可不按掃描順序。每個片獨立解碼,不同片的宏塊不能用于自身片中作預測參考。因此,片的設置不會造成誤碼擴散。
靈活的宏塊排序FMO是H.264的一大特色,適用于H.264的基本檔次和擴展檔次的應用。
圖像內部預測機制,例如幀內預測或運動矢量預測,僅允許用同一片組里的空間相鄰的宏塊。FMO通過宏塊分配映射技術,把每個宏塊分配到不按掃描順序的片中。FMO模式劃分圖像的模式各種各樣,重要的有棋盤模式、矩形模式等。當然FMO模式也可以使一幀中的宏塊順序分割,使得分割后的片的大小小于無線網(wǎng)絡的MTU尺寸,經(jīng)過FMO模式分割后的圖像數(shù)據(jù)分開進行傳輸。
所有的MB被分成了片組0和片組1,相應地分別采用黃色和白色表示。當白片丟失時,因為其周圍的宏塊都屬于其他片的宏塊,利用鄰域相關性,黃片宏塊的某種加權可用來代替白片相應宏塊。這種錯誤隱藏機制可以明顯提高抗誤碼性能。實驗證明,在CIF圖像的視頻會議中,在丟包率達10%時,視頻失真低到需要訓練有素的眼睛才能識別。使用FMO的代價是稍微降低了編碼效率(因為它打破了原先非鄰居MB之間的預測),而且在高度優(yōu)化的環(huán)境中,有較高的時延。
3. 數(shù)據(jù)分割
通常情況下,一個宏塊的數(shù)據(jù)是存放在一起而組成片的,數(shù)據(jù)劃分使得一個片中的宏塊數(shù)據(jù)重新組合,把宏塊語義相關的數(shù)據(jù)組成一個劃分,由劃分來組裝片。H.264視頻編碼標準使用了三種不同類型的數(shù)據(jù)分割。
?。?)A型分割
A型分割是頭信息劃分,包括宏塊類型、量化參數(shù)和運動矢量,這個信息是最重要的。
?。?)B型分割
B型分割是幀內信息劃分,包括幀內CBPs和幀內系數(shù)。幀內信息可以阻止錯誤的傳播,該型數(shù)據(jù)分割要求給定分片的A型分割有效,相對于幀間信息,幀內信息能更好地阻止漂移效應,因此它比幀間分割更為重要。
?。?)C型分割
C型分割是幀間信息劃分,包括幀間CBPs和幀間系數(shù),一般情況下它是編碼分片的最大分區(qū)。幀間分割是最不重要的,它的使用要求A型分割有效。
當使用數(shù)據(jù)分割時,源編碼器把不同類型的分割安排在3個不同的緩沖器中,同時分片的尺寸必須進行調整以保證小于MTU長度,因此是編碼器而不是NAL來實現(xiàn)數(shù)據(jù)分割。在解碼器上,所有分割用于信息重建。這樣,如果幀內或幀間信息丟失了,有效的幀頭信息仍然能用來提高錯誤隱藏效率,即有效的宏塊類型和運動矢量,保留了宏塊的基本特征,從而仍可獲得一個相當高的信息重構質量,而僅僅丟失了細節(jié)信息。
評論