摘 要: 為了使實時傳輸?shù)囊曨l流能夠自動匹配動態(tài)變化的3G網(wǎng)絡,隨著網(wǎng)絡帶寬的變化而變化,從而達到降低數(shù)據(jù)丟失率、流暢傳輸視頻數(shù)據(jù)的目的,利用RTP協(xié)議中的丟包率和時間抖動這兩個關鍵參數(shù),對3G網(wǎng)絡的數(shù)據(jù)傳輸過程進行大量的實驗統(tǒng)計和分析。根據(jù)時間抖動的統(tǒng)計規(guī)律對其進行數(shù)學歸一化,同時與丟包率一起來評估3G網(wǎng)絡的動態(tài)特性,并依此指導TMS320DM365開發(fā)平臺進行數(shù)據(jù)流量的自動調節(jié)。經測試,該方法能有效地匹配3G網(wǎng)絡的有限帶寬,實現(xiàn)視頻數(shù)據(jù)的流暢傳輸。
關鍵詞: 計算機網(wǎng)絡;視頻監(jiān)控;3G無線傳輸;帶寬匹配;TMS320DM365
現(xiàn)在國內流行的3G無線網(wǎng)絡有CDMA2000 EVDO、WCDMA和TD-SCDMA,它們都擁有一個共同的特點,就是網(wǎng)絡的波動性大、誤碼率高、傳輸延遲大以及相對網(wǎng)絡帶寬比較窄[1]。而應用在有線網(wǎng)絡的很多業(yè)務,包括視頻會議、視頻監(jiān)控、IPTV等正逐步向3G無線網(wǎng)絡的領域拓展。要在這樣的網(wǎng)絡環(huán)境中實現(xiàn)實時視頻的流暢傳輸,那么比較高效的傳輸策略就是非常必要的。本研究從3G網(wǎng)絡的自身特性出發(fā),利用RTP協(xié)議對網(wǎng)絡關鍵參數(shù)進行統(tǒng)計,再根據(jù)統(tǒng)計的規(guī)律來指導經TMS320DM365壓縮的實時視頻的傳輸,從而進一步驗證這種統(tǒng)計策略的可靠性。
1 3G網(wǎng)絡評估參數(shù)分析與量化
1.1 RTP協(xié)議參數(shù)分析
鑒于3G網(wǎng)絡的特殊性,衡量其網(wǎng)絡特性的參數(shù)也相對復雜。本研究主要是依據(jù)RTP協(xié)議[2]里定義的兩個重要參數(shù)丟包率和時間抖動來估計3G網(wǎng)絡特性。其中,丟包率統(tǒng)計的是最近一段時間間隔內網(wǎng)絡丟失數(shù)據(jù)的情況,而時間抖動則是數(shù)據(jù)包到達時刻統(tǒng)計方差的估計值,其能有效地評估網(wǎng)絡的變化趨勢。這兩個參數(shù)結合起來使用,就可以對當前的網(wǎng)絡狀況進行有效估計,同時,又能估測出網(wǎng)絡的變化趨勢,為實時視頻傳輸時的動態(tài)調整給予有效的參考。
1.2 網(wǎng)絡參數(shù)歸一化
對于網(wǎng)絡特性參數(shù)的測試,可以采用依據(jù)RTP協(xié)議編寫的函數(shù)庫jrtplib-3.7.1[3]和jrtpthread-1.2.1[4],該函數(shù)庫具有很好的兼容性,可以在多種操作系統(tǒng)中應用。這里主要將其應用在ARM開發(fā)平臺TMS320DM365上和PC平臺的VC2008開發(fā)環(huán)境中。
經過大量實驗數(shù)據(jù)統(tǒng)計,可以得到如下的規(guī)律:(1)丟包率總體處于[0,1]之間,在網(wǎng)絡可控的條件下,丟包率大多數(shù)保持在20%以下,而出現(xiàn)網(wǎng)絡瞬間抖動時,丟包率會達到30%以上;(2)時間抖動總體在[2 000,20 000](單位為RTP時間戳)之間,網(wǎng)絡狀況較好時,時間抖動基本在[2 000,10 000]之間,分布比較平穩(wěn),當出現(xiàn)網(wǎng)絡瞬間抖動時,時間抖動就會出現(xiàn)跳躍,達到20 000以上。
為了能夠對當前網(wǎng)絡進行很好的描述及有效的估計,系統(tǒng)中需要將兩個參數(shù)結合起來研究。但由于兩個參數(shù)的分布范圍不同,那么就需要將其規(guī)范化,最有效的辦法就是將時間抖動的統(tǒng)計數(shù)據(jù)進行歸一化。
首先,利用數(shù)據(jù)規(guī)范化的方式——最大最小值法進行初步歸一化。方法如下。
通過對[2 000,20 000]之間的數(shù)據(jù)進行歸一化得到如圖1所示的曲線。
從圖1中可以看出,經過量化的數(shù)據(jù),在時間抖動處于2 000~10 000之間時,分布比較平穩(wěn)集中;而在10 000~20 000之間,分布就相對比較分散。這正符合時間抖動統(tǒng)計的規(guī)律,即網(wǎng)絡通暢時,時間抖動較小,變化平穩(wěn),就需要被細化,有利于視頻傳輸數(shù)據(jù)的動態(tài)調整;而網(wǎng)絡擁擠或出現(xiàn)抖動時,通常時間抖動都比較大,只需要粗略估計描述變化趨勢即可。
2 分組估計網(wǎng)絡狀況和網(wǎng)絡狀態(tài)[5]
2.1 網(wǎng)絡狀況分組估計
考慮到3G無線網(wǎng)絡的動態(tài)特性,它總是伴隨著時間、空間的變化而逐漸變化的。系統(tǒng)中不僅要能統(tǒng)計出當前3G網(wǎng)絡的狀況,還要能預測出隨后網(wǎng)絡的變化趨勢,那么就需要將丟包率和時間抖動這兩個參數(shù)結合起來。本研究采用線性組合的方式估計網(wǎng)絡的整體狀況,即:
其中,i表示分組統(tǒng)計中的第i次;P(i)表示第i次的丟包率,描述最近時間段內網(wǎng)絡的丟包狀況,即網(wǎng)絡當前狀況;J(i)表示第i次的時間抖動,估計網(wǎng)絡即將變化的趨勢;Y(i)表示網(wǎng)絡總體狀況;比例系數(shù)?琢能有效調節(jié)丟包率和時間抖動在整體網(wǎng)絡估計中的作用。當丟包率起主導作用時,可以調節(jié)使?琢增大,反之則減小。
為進一步說明式(4)對3G網(wǎng)絡的有效評估,特做出大量的實驗數(shù)據(jù)統(tǒng)計,結果如圖2所示,其中,?琢取0.7。測試條件為:TMS320DM365開發(fā)平臺的編碼模式設為圖像大小CIF,圖像質量A,幀率15 f/s,GOP=15[6]。可以看出,網(wǎng)絡總體狀況Y(i)得到了充分地平滑,而對網(wǎng)絡的變化趨勢也能有效估計,這說明式(4)的線性組合具有一定的可靠性。
2.2 網(wǎng)絡狀態(tài)的定義
網(wǎng)絡狀況的分組統(tǒng)計,其時間較短,系統(tǒng)默認為5 s,這段時間內不利于實時傳輸視頻流的調整;同時,為了增加網(wǎng)絡狀況估計的可靠性,就有必要對這個分組統(tǒng)計的結果計算概率分布。可以將網(wǎng)絡狀態(tài)分為輕載、滿載和擁塞3種狀態(tài),如圖3所示。
設定閾值T1、T2,且0<T1<T2<1。當0<Y(i)<T1的概率P1高于設定閾值PT1時,網(wǎng)絡處于輕載狀態(tài),可以逐漸增加視頻數(shù)據(jù)傳輸?shù)乃俾剩钡骄W(wǎng)絡處于滿載狀態(tài);當T2<Y(i)<100%的概率P3高于設定值PT2時,網(wǎng)絡處于擁塞狀態(tài),必須迅速減小視頻數(shù)據(jù)傳輸?shù)乃俾剩钡骄W(wǎng)絡回到滿載狀態(tài);除此之外,都表明當前網(wǎng)絡狀態(tài)正常,可以繼續(xù)維持這一狀態(tài)。
注意:T1應取較低的值以避免產生QoS振蕩,T2的選取標準是網(wǎng)絡傳輸?shù)臄?shù)據(jù)丟失程度,雖然已比較高但解碼后的視頻效果仍在可接收的范圍內。這里取T1=3%,T2=10%。PT1和PT2可以依照實際網(wǎng)絡狀況而定。
3 TMS320DM365平臺視頻數(shù)據(jù)傳輸
3.1 TMS320DM365平臺視頻流分析[6-7]
TMS320DM365采用的是TI的DaVinci系列架構,集成了一個ARM926EJ-S內核,一個H.264高清編解碼協(xié)處理器HDVICP和一個MPEG-4/JPEG高清編解碼協(xié)處理器MJCP,可以支持H.264/MPEG-4的高清視頻的編解碼。它能夠調節(jié)輸入視頻的亮度、對比度、色調、銳度和飽和度,同時,又能夠通過程序來設定分辨率、比特率和幀率。
影響TMS320DM365開發(fā)平臺上H.264格式的視頻碼流的主要參數(shù)有圖像質量、GOP(Group of Pictures)、幀率和圖像大小。經過對這些參數(shù)的分析,并結合對圖像質量、運動補償以及視頻流暢性等諸多方面的考慮,按照視頻數(shù)據(jù)碼流大小進行實驗統(tǒng)計,得到的結果如表1所示。
3.2 視頻傳輸碼流動態(tài)控制
針對圖3所示網(wǎng)絡狀態(tài)的定義,以及實時視頻流對3G網(wǎng)絡的反應速度,結合如表1所示不同視頻模式碼流的區(qū)別,設計程序流程圖如圖4所示。
初始條件下,視頻硬件編碼器TMS320DM365設定為模式4(如表1中所示),碼流基本保證在40 kb/s左右,在現(xiàn)有的3G網(wǎng)絡狀況條件下,可以保證這種視頻流的順暢傳輸。而一旦網(wǎng)絡狀況變得比較擁塞時,短時狀態(tài)中統(tǒng)計的P3超過了閾值PT2,系統(tǒng)就可以迅速將視頻編碼模式向低級模式切換,以降低視頻碼流來適應網(wǎng)絡帶寬;而當網(wǎng)絡狀況變得通暢處于輕載時,長時狀態(tài)中統(tǒng)計的P1超過了閾值PT2,系統(tǒng)就可以向高級模式切換,提高圖像質量,直到網(wǎng)絡處于滿載。經過系統(tǒng)總體的測試,發(fā)現(xiàn)這種動態(tài)調整的視頻碼流傳輸策略能有效地適應變化的3G網(wǎng)絡帶寬。尤其在局域范圍內網(wǎng)絡比較擁塞時,系統(tǒng)能夠迅速切換進入低級模式,處于視頻碼流較低情況,以占用較少的網(wǎng)絡資源,實現(xiàn)流暢的傳輸。
此外,在有些特殊的系統(tǒng)當中,可能有些需要視頻質量比較高,而有些則需要對運動變化的圖像有較好的補償,那么,就可以通過設定初始條件下的視頻模式或改變動態(tài)調整過程中的視頻模式,來滿足這些要求。總之,對TMS320DM365硬件參數(shù)的不同設定,都可以有效改變實時視頻傳輸系統(tǒng)的總體性能。
本研究中通過對RTP協(xié)議的利用,實現(xiàn)了對3G網(wǎng)絡狀況的總體估計,引入了網(wǎng)絡狀態(tài)的判斷分布,從而指導TMS320DM365開發(fā)平臺不同模式之間的切換,使得實時視頻流能夠適應變化的3G網(wǎng)絡。但是,如果能采用更多的參數(shù)來衡量網(wǎng)絡狀況的話,將能夠進一步提升網(wǎng)絡估計的準確性。此外,本研究的核心是通過網(wǎng)絡估計控制實時視頻流以適應網(wǎng)絡的變化。當網(wǎng)絡因抖動頻繁或是視頻模式切換不及時而出現(xiàn)丟包率比較高時,視頻的解碼顯示就會產生比較明顯的馬賽克現(xiàn)象。因此,系統(tǒng)可以在圖像傳輸?shù)倪^程中采取其他的辦法,比如通過增加冗余數(shù)據(jù)包來恢復丟失的數(shù)據(jù),或者是在視頻解碼時加入補償算法來恢復丟失的圖像數(shù)據(jù)等,從而進一步提升圖像質量。
參考文獻
[1] STOCKHAMMER T, HANNUKSELA M M, WIEGAND T. H.264/AVC in wireless environments[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2003,13(7):657-673.
[2] SCHULZRINNE H, CASNER S, FREDERICK R, et al. RTP: A transport protocol for real-time applications[S]. RFC3550,2003.
[3] LIESENBORGS J. JRTPLIB 3.4.0[Z]. 2006.
[4] LIESENBORGS J. JThread manual(v1.2.1)[Z]. 2006.
[5] 盛先剛.基于RTP的H.264視頻傳輸系統(tǒng)研究[D].西安:西安電子科技大學,2006.
[6] Texas Instruments Incorporation. DM365-DVR reference design user guide document version 1.1[Z]. 2009.
[7] BAROT S, SHAIK K, SRINIVASAMURTHY N, et al. Application parameter settings for TMS320DM365 H.264 encoder[Z]. Texas Instruments Incorporation. 2010.