常曉潔 江肖強 單康康
摘 要: 由于無線網(wǎng)絡實時帶寬的不穩(wěn)定性,特定的視頻碼流率在網(wǎng)絡傳輸過程中不可能完全適應無線網(wǎng)絡帶寬的變化,因此需要根據(jù)不同編碼的特點如H.264設定不同的自適應傳輸控制算法,在保障視頻幀完整性的情況下適應網(wǎng)絡帶寬的不斷變化,同時為調(diào)整后的碼流提供容錯重傳機制,并有效控制容錯重傳機制浪費大量帶寬資源。文章將容錯技術(shù)與傳輸控制算法進行結(jié)合,以保證在充分利用實時網(wǎng)絡帶寬的同時達到高可靠傳輸。仿真測試結(jié)果表明,在無線網(wǎng)絡帶寬波動的情況下,能夠自適應調(diào)整視頻碼率,并滿足終端失真率要求,降低容錯時延。
關(guān)鍵詞: 網(wǎng)絡傳輸; 自適應; 傳輸控制; 容錯
中圖分類號:TP393 文獻標志碼:A 文章編號:1006-8228(2016)01-29-04
Adaptive WiFi network bandwidth control method for video fault-tolerant transmission
Chang Xiaojie, Jiang Xiaoqiang, Shan Kangkang
(Zhejiang University Library and Information center, Hangzhou, Zhejiang 310000, China)
Abstract: Due to the instability of the wireless network real-time bandwidth, specific video stream rate can't completely adapt to the change of wireless network bandwidth during transmission. So the adaptive transmission control algorithm based on different characteristics such as H.264 is needed to adapt the network bandwidth. At the same time the algorithm provides adjusted stream a fault-tolerant retransmission mechanism, and effectively controls the bandwidth resources. In this paper, the fault tolerance technology and transmission control algorithm are combined to ensure the full use of real-time network bandwidth to achieve high reliable transmission. The simulation results show that in the case of wireless network bandwidth fluctuation, the bandwidth can be adapted to the video stream rate, and meet the requirements of the terminal distortion, reduce fault tolerance delay.
Key words: network transmission; adaptive; transmission control; fault-tolerant
0 引言
隨著多媒體壓縮技術(shù)的發(fā)展和無線網(wǎng)絡的普及,通過無線網(wǎng)絡傳輸流媒體以便于在移動終端接收音視頻將越來越受到人們的關(guān)注。無線網(wǎng)絡的802.11n協(xié)議雖然通過MIMO、OFDM、short GI等技術(shù)方案提高了碼流速率,但是沒有針對帶寬的擁塞控制。目前常用的流媒體傳輸控制協(xié)議[1]是實時傳輸協(xié)議RTP(Real-time Transport Protocol)和實時傳輸控制協(xié)議RTCP(Real-time Transport Control Protocol)。這些控制協(xié)議是工作在UDP協(xié)議基礎之上的,不能夠解決傳輸過程差錯所帶來的視頻質(zhì)量下降問題。目前差錯控制的解決一般是在可靠傳輸協(xié)議TCP傳輸層的層次上,采用ARQ(Automatic Repeat reQuest)和FEC(Forward Error-Correcting)[2],以減少數(shù)據(jù)通信中差錯的發(fā)生。然而,ARQ 要求信道的往返延時相對較??;FEC 的冗余度較大,會進一步降低有效視頻傳輸帶寬,降低編碼質(zhì)量。因此,需要將視頻編碼與視頻傳輸控制結(jié)合起來,并在視頻壓縮和差錯控制之間做好調(diào)控。
1 基于容錯的視頻流傳輸控制架構(gòu)
保證終端用戶獲取滿意的視頻播放質(zhì)量是容錯技術(shù)的關(guān)鍵所在[3]。傳統(tǒng)自動重發(fā)請求ARQ算法盡可能多次重發(fā)丟失的數(shù)據(jù)幀,導致占用大量帶寬、增加延遲。為解決這個問題,文獻[4]提出控制部分重傳的方法進行容錯恢復,但受限于有線網(wǎng)絡環(huán)境,文獻[5]采用的是只進行部分重傳,以提高網(wǎng)絡傳輸性能。有效地控制視頻流的傳輸控制方法必須能夠及時根據(jù)網(wǎng)絡狀況實時調(diào)整視頻流[6]。不少文獻提出了基于TCP的不同解決方案的傳輸控制。文獻[7]設計的算法延時采用了RTT,無線網(wǎng)絡中不能正確計算出視頻的RTT,同時還將由此造成更嚴重的視頻錯誤丟幀。文獻[8]傳輸控制方法能夠自適應網(wǎng)絡可用帶寬,但是易造成視頻幀的過多丟棄以及丟棄視頻關(guān)鍵幀的情況。
針對以上提出的這些問題,本文中將容錯技術(shù)與傳輸控制算法進行結(jié)合,以保障在充分利用實時網(wǎng)絡帶寬的同時達到高可靠傳輸。容錯傳輸控制系統(tǒng)原理圖如圖1所示。
本文自適應控制算法設置了多個數(shù)據(jù)緩存,M1為編碼器輸出的字節(jié)長度為L1的1幀視頻數(shù)據(jù)緩存;M1發(fā)送過來的數(shù)據(jù)被分成緩存長度記為L2的M2和暫存M2的發(fā)送緩存M3;M4為接收緩存;M5為播放緩存。
2 基于容錯的視頻流傳輸控制算法
2.1 自適應傳輸控制模型
傳輸控制方法主要有丟幀、下調(diào)碼率和上調(diào)碼率。由于無線網(wǎng)絡帶寬的不穩(wěn)定性以及碼率調(diào)整反饋延時,若不能控制好調(diào)整碼率的時刻,則會導致反復上調(diào)或下調(diào)碼率,影響用戶使用效果。
首先當網(wǎng)絡帶寬比視頻碼率小時,M2中會累積尚未發(fā)送的視頻數(shù)據(jù),但是當L+L1>L2時,M1中的數(shù)據(jù)幀將不能轉(zhuǎn)至M2,需要進行丟幀操作。為保障幀的完整性,需設定一個幀計數(shù)器,每次丟幀只是將M2中的非關(guān)鍵幀第k幀丟棄。
若L+L1>h*L2,(h為經(jīng)驗值,一般取0.7~0.9),進行視頻碼率下調(diào),若下調(diào)之后仍L+L1>h*L2,則需再次進行下調(diào)。為更好的控制下調(diào)時刻,本文設定了下調(diào)標簽Tr、下調(diào)間隔控制參數(shù)n1(MAX(n1)=aC(aC+1)其中a為加權(quán)系數(shù),取值一般為4~8)、以及下調(diào)敏感度Sr(Sr為經(jīng)驗值,一般取值0.05~0.15)。下調(diào)之后若Tr=1、L+L1>h*L2,并且n1>SRaC(aC+1),則需要將視頻碼率再下調(diào)一級。
若L+L1?h*L2,需要進行視頻碼率上調(diào),但是若上調(diào)之后仍L+L1?h*L2,需再次進行上調(diào)。為更好的控制上調(diào)時刻,本文同樣設定了上調(diào)標簽Tu、上調(diào)間隔控制參數(shù)n2,MAX(n2)=bC(bC+1)(b為加權(quán)系數(shù),取值一般為12~24)、以及上調(diào)敏感度Su(Su為經(jīng)驗值,一般取值0.05~0.15)。上調(diào)之后若Tu=1、L+L1?h*L2,并且n2>SubC(bC+1),則需要將視頻碼率再上調(diào)一級。
視頻流發(fā)送線程的自適應控制算法流程如圖2所示。根據(jù)具體的網(wǎng)絡環(huán)境選擇適當?shù)膮?shù)值h,a,b,C,Sr,Su。然后啟動發(fā)送線程。
2.2 容錯控制算法
本文同時考慮了終端視頻失真率、視頻碼流容錯重傳消耗的網(wǎng)絡資源和無線網(wǎng)絡實時帶寬等方面。假定單幀視頻碼流滿足香農(nóng)第三定理保失真度準則下的有失真信源編碼定理的編碼流d0和編碼失真r0,且經(jīng)過丟包率為p的無線網(wǎng)絡傳輸,由此可建立模型如公式⑴:
⑴
公式⑴中d表示重傳和錯誤恢復單幀圖像耗用的帶寬資源占總體資源的比率,r表示終端的最終失真度,α是歸一化權(quán)重代表d和r數(shù)值比例關(guān)系。
求在此模型的最小值
⑵
⑶
另設公式⑵和⑶為零,即可求得模型f(d,α)的最小值,以及此時的帶寬-失真權(quán)重α。
3 算法模擬及總結(jié)
由圖3可以看到,當下調(diào)敏感度數(shù)據(jù)量超過閾值一段時間后,將碼率進行了下調(diào),之后雖然仍出現(xiàn)了下調(diào)敏感度數(shù)據(jù)量超過閾值,但由于未超過限制,未要求再次進行下調(diào)碼率,而當上調(diào)調(diào)敏感度數(shù)據(jù)量超過閾值后,也并沒有立即進行上調(diào),而是在持續(xù)一段時間后 雖然也有一段時間大于閾值,但未處于上升趨勢,待穩(wěn)定且達到達到上調(diào)視頻碼率的條件下才進行上調(diào)工作。因此本文算法能夠提供更穩(wěn)定的視頻傳輸。
圖4是針對網(wǎng)絡狀況差,丟包率為40%時的情況,本文提出的自適應無線網(wǎng)絡帶寬的視頻容錯傳輸控制方法比ARQ降低了11%。由此可知,在網(wǎng)絡狀況差的情況下,本文提出的方法更能發(fā)揮其降低視頻傳輸網(wǎng)絡帶寬的優(yōu)勢。
參考文獻(References):
[1] 李曉城,錢松榮.一種自適應的3G網(wǎng)絡流媒體速率控制算法[J].
小型微型計算機系統(tǒng),2012.7:1429-1432
[2] 黃泳翔,錢德沛,伍衛(wèi)國等.基于數(shù)據(jù)累積的P2P流媒體自適
應數(shù)據(jù)調(diào)度[J].華中科技大學學報(自然科學版),2011.6:83-86
[3] Rendon-Morales E,Mata-Diaz J,Alins J,etc. Performance
evaluation of selected Transmission Control Protocol variants over a digital video broadcasting-second generation broadband satellite multimedia system with QoSs[J].International Journal of Communication System,2013.12:1579-1598
[4] Cajote RD,Aramvith S,Miyanaga Y.FMO-based H.264
frame layer rate control for low bit rate video transmission[J]. Eurasip Journal On Advances In Signal Processing,2011.10:1-11
[5] WenHao, Lin Chuang, Ren Fengyuan, Yang Hongkun, He
Tao. Joint Adaptive Redundancy and Partial Retransmission for Reliable Transmission in Wireless Sensor Networks[C]. IPCCC,2008.7:303-310
[6] 劉國英,章云,陳泓屺.H.264視頻碼流自適應傳輸?shù)难芯颗c
實現(xiàn)[J].廣東工業(yè)大學學報,2013.12:83-87
[6] Yashiro Daisuke, Tian, Dapeng, Yakoh, Takahiro.
End-to-End Flow Control for Visual-Haptic Communication in the Presence of Bandwidth Change[C]. Electronics And Communications in Japan,2013.11(96):26-34
[7] Chan K F, H W J, Lin C P. Priority early frame discard
algorithm for TCP-based video streaming[J]. communication and Networking international conference,2009.56:
25-32
[8] 熊永華.基于TCP的實時流媒體自適應傳輸策略及其應用
研究[D].中南大學,2009.