• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      網(wǎng)絡帶寬自適應傳輸算法的研究與實現(xiàn)

      2010-11-26 02:36:56靜,李
      關鍵詞:碼流碼率服務器

      盧 靜,李 華

      (河南工程學院 計算機科學與工程系,河南 鄭州 451191)

      隨著計算機網(wǎng)絡和視頻壓縮技術的快速發(fā)展,多媒體技術的研究和應用越來越多地受到重視.由于多媒體技術擁有的數(shù)據(jù)量大、對實時性要求比較強的特點,導致在IP網(wǎng)絡中傳輸時,其QoS難以得到保證.因此,如何在有限的帶寬上提高多媒體信息的傳輸質(zhì)量成為人們研究的重點.由于傳統(tǒng)網(wǎng)絡層協(xié)議和傳輸層協(xié)議(如TCP/IP、UDP等)的設計初衷是用來傳輸非實時數(shù)據(jù)的,大多數(shù)設計決策都沒有考慮網(wǎng)絡上的延時、帶寬和跳變等問題.這種策略導致在目前的網(wǎng)絡上,傳統(tǒng)網(wǎng)絡協(xié)議不能很好地處理多媒體數(shù)據(jù)的傳輸.為了解決上述問題,本文提出了一種基于RTP/RTCP協(xié)議的實時視頻流網(wǎng)絡帶寬自適應傳輸算法.一般的網(wǎng)絡帶寬自適應傳輸算法[1,2]只是在傳統(tǒng)的AMD算法的基礎上,對增加因子和減小因子做定性的改變,從而動態(tài)調(diào)整碼流的發(fā)送速率.本文的算法則是根據(jù)網(wǎng)絡的不同狀態(tài)動態(tài)確定增加因子和減小因子的值.實驗表明,該算法的引入可以有效地提高視頻流在傳輸過程中的QoS.

      1 RTP/RTCP

      RTP/RTCP(Real-time Transport Protocol/Real-time Transport Control Protocol)是由IETF基于多媒體傳輸?shù)奶厥庑枨蠖x的用于在互聯(lián)網(wǎng)上傳輸實時數(shù)據(jù)的一套標準協(xié)議,在承載多媒體流的運行環(huán)境下,RTP/RTCP可以提供給應用層相當大自由度的多媒體流控制空間和方式.RTP/RTCP運行在UDP協(xié)議層之上,分為RTP數(shù)據(jù)部分和RTCP控制部分.

      RTP協(xié)議為用戶提供端到端的連續(xù)媒體數(shù)據(jù)的實時傳輸服務,支持多播或單播網(wǎng)絡;RTP協(xié)議為實時業(yè)務提供端到端的傳輸服務,向接收端點傳送恢復實時信號所必需的定時和順序信息,依靠時間戳信息實現(xiàn)流的同步.RTP包頭結構如圖1所示.

      0 31

      RTCP協(xié)議是RTP協(xié)議的控制部分,其主要功能是為應用程序提供會話質(zhì)量的信息,用于實時監(jiān)控媒體數(shù)據(jù)的傳輸質(zhì)量,為系統(tǒng)提供擁塞控制和流控制.RTCP提供五種類型的控制包:(1)發(fā)送方報告包SR(Sender Report)發(fā)送方發(fā)送的統(tǒng)計信息;(2)接收方報告包RR(Receiver Report)接收方的接收統(tǒng)計信息;(3)源描述項包SDES(Sender Description)描述與會話源相關的信息;(4)應用包APP(Application)開發(fā)新的應用;(5)離開包BYE:離開會話時的報告包.RTCP控制協(xié)議需要和RTP協(xié)議一起配合使用,當應用程序啟動一個RTP會話時將同時占用兩個端口,分別供RTP和RTCP使用,通過使用不同的端口號,可以把RTP信息包和RTCP信息包區(qū)分開來.通常RTCP會采用與RTP相同的分發(fā)機制,向會話中的所有成員周期性地發(fā)送控制信息,應用程序通過接收這些數(shù)據(jù),從中獲取參與會話者的相關資料及網(wǎng)絡狀況、丟包率等反饋信息,從而對提供QoS或者對網(wǎng)絡狀況進行診斷.

      2 自適應網(wǎng)絡傳輸策略

      用戶一般不希望媒體流的變化速率過快,所以要合理調(diào)整自適應算法,減少媒體流的抖動,提高媒體流傳輸?shù)钠椒€(wěn)性.

      傳統(tǒng)的碼流調(diào)整算法采用的是AMD算法,即加性增乘性減的方法.當網(wǎng)絡出現(xiàn)擁塞時,使用一個乘法因子α快速降低碼流的發(fā)送速率;當擁塞消除后,使用一個加法因子β來緩慢提高碼流的發(fā)送速率.用x(n+1)和x(n)分別表示n+1時隙和n時隙碼流的發(fā)送速度,t(n)表示時隙n內(nèi)的丟包率,k1、k2表示丟包率的兩個門限值,則傳統(tǒng)的碼流調(diào)整算法可表示成如下形式:

      (1)

      RTP是根據(jù)RTCP所反饋的信息來進行碼率的調(diào)整的,但RTCP的報文發(fā)送具有一定的時間間隔.所以,如果減小因子α選取得過大,碼率降低得就會很快,信道的利用率在碼率沒有恢復到一定程度前會較低.如果α取值過小,則擁塞程度得不到及時地緩解.對于增加因子β,如果取值太小,碼率的增幅就會太小,會降低網(wǎng)絡帶寬的利用率.為了解決上述問題,可以將α,β設為一個變量,使用變量來調(diào)整碼率.

      設X是上次發(fā)生擁塞時的RTP流的速率,R,S是常數(shù)(01),K是判斷恢復速率是否足夠接近X的閥值,是一個相對量,參數(shù)α,β的變化按下面的規(guī)則進行調(diào)整:

      (1) 初始時,即RTP流第一次進入網(wǎng)絡,則:

      α=R,β=S×x(n)

      (2)

      (2) 當網(wǎng)絡發(fā)生擁塞時,按公式(1)降低碼率;

      (3) 擁塞緩解后,如果x(n)

      x(n)+R

      α=R,β=S×x(n)

      (3)

      (4) 擁塞緩解后,如果x(n)>X/2 且

      x(n)+R>X,X-x(n)>K,則:

      α=m×(X-x(n)),β=S, (0

      (4)

      (5) 擁塞緩解后,如果x(n)>X/2且

      x(n)+R>X,X-x(n)

      α=m×(X-x(n)),β=S×x(n)

      (5)

      該算法的基本思想是利用網(wǎng)絡發(fā)生擁塞時的信息來控制碼率的增幅.當網(wǎng)絡發(fā)生擁塞時,記下此時的碼流速度作為上一次擁塞速度X,同時按照公式(1)快速降低碼流.當擁塞緩解后,若此時的碼率滿足(3),則快速增加碼流的發(fā)送速率;若此時的碼率滿足(4),則讓碼流的發(fā)送速度進行慢增長,同時令減小因子等于m×(X-x(n));若此時的碼率滿足(5),即RTP流已經(jīng)充分接近上次發(fā)生擁塞時的速率,若此刻網(wǎng)絡還沒出現(xiàn)擁塞,則說明上次網(wǎng)絡擁塞是臨時的,應減小α增加β, 令β的取值恢復到快速增長階段的取值.

      3 多路嵌入式視頻服務器的實現(xiàn)

      根據(jù)上述討論,我們實現(xiàn)了一個基于RTP的H.264嵌入式多路視頻服務器[3],系統(tǒng)采用客戶機/服務器模式,其體系結構如圖2所示.

      圖2 視頻服務器軟件體系結構圖Fig.2 Video server software architecture

      視頻服務器是該系統(tǒng)的核心,工作在嵌入式Linux平臺上,服務器端將采集到的視頻進行本地顯示和存儲,將壓縮后的視頻數(shù)據(jù)發(fā)送到網(wǎng)絡中,并對用戶的請求做出響應.服務器端的軟件部分采用模塊化的程序設計思想,從功能上服務器端的軟件分為5個模塊.

      3.1 視頻采集模塊

      該模塊主要完成兩項工作:采集視頻信息;轉換圖像格式為YUV格式.該模塊采用Linux的v4l[4]實現(xiàn).

      3.2 壓縮編碼模塊

      該模塊完成對采集的視頻信息進行壓縮編碼.考慮到系統(tǒng)的靈活性及經(jīng)濟性,系統(tǒng)采用了利用軟件實現(xiàn)數(shù)據(jù)壓縮編碼的方案,使用H.264標準進行壓縮.H.264壓縮標準[5]是一種新的編碼方法,與其他壓縮編碼方式比較,利用H.264標準可以獲得更高的壓縮比及更好的圖像質(zhì)量.H.264編碼器都是開源的,可以從網(wǎng)上下載,此處用的是T264,對采集到的YUV格式的數(shù)據(jù)進行逐幀壓縮.

      3.3 網(wǎng)絡傳輸模塊

      該模塊負責視頻信息的網(wǎng)絡傳輸,將視頻數(shù)據(jù)分組、打包后發(fā)送到網(wǎng)絡中.由于網(wǎng)絡視頻信息傳輸實時性的要求,故本模塊使用了RTP傳輸協(xié)議.在實際網(wǎng)絡傳輸過程中,網(wǎng)絡帶寬的變化往往不可預料,網(wǎng)絡的抖動會影響視頻傳輸?shù)馁|(zhì)量.因此,該傳輸模塊需具備網(wǎng)絡帶寬自適應性,這可通過RTCP的反饋信息實現(xiàn),通過RTP接口,根據(jù)監(jiān)控端反饋的網(wǎng)絡狀態(tài)信息進行碼流速率的動態(tài)調(diào)整.具體過程為:編碼后的視頻信息經(jīng)RTP組件發(fā)送至網(wǎng)絡,在傳輸過程中,監(jiān)控端的QoS監(jiān)視模塊根據(jù)接收包的丟包率和延遲情況診斷網(wǎng)絡的擁塞狀況,反饋控制模塊對這些信息分析后通過RTCP包向碼率控制器反饋網(wǎng)絡信息,碼率控制器即可根據(jù)網(wǎng)絡狀態(tài)進行碼率的自適應調(diào)整.其中,碼率控制器部分采用上文中的碼率調(diào)整算法,完成碼流的動態(tài)調(diào)整,其傳輸模型如圖3所示.

      圖3 數(shù)據(jù)傳輸模型Fig.3 Data transmission model

      3.4 存儲管理模塊

      該模塊負責將編碼后的視頻數(shù)據(jù)存儲到磁盤中,并將視頻文件信息寫入到嵌入式數(shù)據(jù)庫MySQL,以供檢索和回放.在本模塊的存儲管理中,采用了等長分組存儲策略:將待存儲的視頻信息按照時序關系分為若干個分組,每個分組被存儲于一個大小固定的存儲單元內(nèi).

      3.5 設備控制模塊

      該模塊根據(jù)用戶界面發(fā)出的或網(wǎng)絡傳送來的控制命令,控制解碼器,完成對云臺、鏡頭等設備的控制.

      4 結束語

      本文提出了一種基于RTP的自適應網(wǎng)絡傳輸策略,利用該策略可以動態(tài)調(diào)整碼流的發(fā)送速率.在該策略的基礎上,采用H.264編碼技術,設計了一個多路嵌入式視頻服務器.試驗證明,對于包含有多路視頻服務器的嵌入式系統(tǒng),上述網(wǎng)絡傳輸部分能夠很好地完成視頻數(shù)據(jù)的實時傳輸,網(wǎng)絡自適應能力良好.

      參考文獻:

      [1] WU D, HOU Y T. Transporting real-time video over the Internet challenge and approaches[C]. Proceedings of the IEEE, 2000, 88(12): 1 855-1 877.

      [2] 張正華,余松煜,陳軍華. 一種針對視頻點播系統(tǒng)的RTP/RTCP自適應算法[J].計算機工程,2006,32(6):223-226.

      [3] 鐘玉琢.流媒體和視頻服務器[M].北京:清華大學出版社,2003.

      [4] 范永開.Linux應用開發(fā)技術詳解[M].北京:人民郵電出版社,2006.

      [5] THOMAS W, GARY J S, GISLE B,et al. Overview of the H.264/AVC video coding standard[C]. IEEE Transactions on Circuits and Systems for Video Technology, 2003, 13(7): 560-576.

      猜你喜歡
      碼流碼率服務器
      分布式碼流實時監(jiān)控與錄制系統(tǒng)的設計與實現(xiàn)
      電視技術(2021年8期)2021-10-21 08:19:48
      數(shù)字電視TS碼流協(xié)議簡要分析
      視聽(2021年8期)2021-08-12 10:53:42
      通信控制服務器(CCS)維護終端的設計與實現(xiàn)
      基于狀態(tài)機的視頻碼率自適應算法
      計算機應用(2018年7期)2018-08-27 10:42:40
      得形忘意的服務器標準
      計算機網(wǎng)絡安全服務器入侵與防御
      基于場景突變的碼率控制算法
      X264多線程下碼率控制算法的優(yōu)化
      計算機工程(2015年8期)2015-07-03 12:19:56
      多光譜圖像壓縮的聯(lián)合碼率分配—碼率控制方法
      宇航學報(2014年2期)2014-12-15 02:49:06
      一種比較ASN.1碼流差異的方法
      乌兰县| 新干县| 甘泉县| 霸州市| 上饶县| 乐东| 长汀县| 湾仔区| 南召县| 景谷| 平原县| 读书| 黎川县| 惠安县| 仲巴县| 安国市| 永丰县| 贵阳市| 奉化市| 项城市| 澄江县| 黄平县| 青阳县| 枞阳县| 随州市| 分宜县| 偃师市| 星子县| 民权县| 湖南省| 屯昌县| 鹤壁市| 枣阳市| 福安市| 崇明县| 嫩江县| 西丰县| 台南县| 合山市| 柳河县| 土默特右旗|