高清VGA采集視頻傳輸幀數要“步步為營”
來源:數字音視工程網 作者:Tyrael 編輯:數字音視工程 2011-01-12 00:00:00 加入收藏 咨詢

所在單位: | * |
姓名: | * |
手機: | * |
職位: | |
郵箱: | * |
其他聯系方式: | |
咨詢內容: | |
驗證碼: |
|
高清VGA采集視頻的參數選擇需要考慮到I 幀的數量,如果I幀過多,會影響壓縮效率,如果I 幀過少,會影響視頻解碼質量。視頻播放時,I 幀的丟失是不可容忍的,因此要盡量保證播放時I 幀的數據已收到。選擇1 個合適的編碼參數,若每T s1 個I 幀,則將每T s 的數據作為一個批次發送。若傳輸延遲為t s,則初始延遲為(T+t) s。此后為保證視頻播放的實時性和流暢性,無論每批次在T s 內是否傳送完畢,都應停止當前批次的發送,及時啟動下一批次的發送。在每批次中,視頻幀的打包應遵循IETF 相關標準[4]規定。即每一個數據包的長度應滿足不超過MTU (Maximum TransmissionUnit,最大傳輸單元,一般為1 500 byte)的條件,每個P 幀單獨組成1 個數據包,I 幀在每個限制長度內組成1 個包, 不足的部分單獨組成1 個包。如果只利用ExOR 傳輸數據,由于無線多跳網絡本身的隨機性和不穩定性以及ExOR 最后幾個包的傳輸延遲較大, 并不一定能保證每T s 的數據都能在T s 內傳輸完畢。這樣就會造成某些批次最后幾個數據包的丟失。而ExOR 調度機制本身決定了這最后幾個數據包是隨機的,如果丟掉的恰好是I 幀的數據包,造成I 幀的丟失,就會導致這T s 的視頻無法播放,從而造成視頻觀看的不連續性和主觀收看質量的下降。因此,不能簡單地將ExOR 直接用于視頻傳輸,必須根據視頻傳輸的特殊性做相應地調整。
高清VGA采集視頻傳輸與一般數據傳輸所不同, 其特殊性之一就在于高清VGA采集視頻傳輸中數據包的重要性是不同的[5]。關鍵幀I 幀是重要的,一般要盡量保證I 幀傳輸的可靠性。因為1 個I 幀將影響并決定其后數個P幀的解碼,1 個I 幀的丟失將導致2 個I 幀之間的視頻無法播放或視頻質量急劇下降。而P 幀是非關鍵幀,丟失個別P 幀對視頻質量影響不大,一般來說,P 幀只是盡量傳輸,并不進行差錯重傳。因此,必須根據數據包重要性的不同進行相應處理。對于I幀,應保證無差錯地傳輸,而對于P 幀,盡力保證一定時間內盡量多的傳送。同時,傳統路由雖然傳輸速率不如機會路由, 但是傳統路由網絡結構清晰,并且無須成批發送,配合差錯重傳會使得某些特定數據傳輸更有保障。所以,對于實時視頻傳輸,可以利用傳統路由對I 幀的數據包進行差錯重傳,而對P 幀的數據包用機會路由進行盡力傳輸。這樣,就同時利用了2 種路由的優點根據不同數據包的性質選擇相應合適的路由協議進行傳輸,并且解決了I 幀丟失的問題。
評論comment