版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
寬帶網(wǎng)絡(luò)mpeg4的性能分析與應(yīng)用
隨著互聯(lián)網(wǎng)的快速發(fā)展,網(wǎng)絡(luò)基礎(chǔ)設(shè)施得到了充分發(fā)展,寬網(wǎng)絡(luò)用戶也在迅速增長(zhǎng)。他們?yōu)榫W(wǎng)絡(luò)媒體應(yīng)用提供了強(qiáng)大的市場(chǎng)動(dòng)力。視頻點(diǎn)播(VideoOnDemand,VOD)則是網(wǎng)絡(luò)流媒體應(yīng)用的主要模式之一。MPEG-4是MPEG提出的一個(gè)基于對(duì)象的音頻、視頻壓縮編碼標(biāo)準(zhǔn),它正在不斷地走向成熟,逐步成為音/視頻應(yīng)用中不可或缺的一個(gè)基礎(chǔ)標(biāo)準(zhǔn)。MPEG-4具有的高壓縮率、強(qiáng)交互能力和靈活可分級(jí)能力使之在網(wǎng)絡(luò)流媒體特別是視頻點(diǎn)播中具有廣闊的應(yīng)用前景。MEPG-4的RTP(Real-timeTransportProtocol)封裝技術(shù)則是這些應(yīng)用的基石。1層組幀rtp由IETF定義的RTP是一種用于Internet上針對(duì)多媒體數(shù)據(jù)流的傳輸協(xié)議。RTP并不作為一個(gè)獨(dú)立的網(wǎng)絡(luò)層來(lái)實(shí)現(xiàn),它采用應(yīng)用層組幀的理念,作為應(yīng)用程序代碼的一部分,針對(duì)一個(gè)具體媒體的應(yīng)用需要額外的文檔定義封裝規(guī)則。RTP本身并不能為數(shù)據(jù)包提供可靠的傳輸機(jī)制,也不提供流量控制或擁塞控制,它依靠RTCP(Real-timeTransportControlProtocol)來(lái)提供這些服務(wù)。RTP和RTCP的配合使用使得它們能以有效的反饋和最小的開(kāi)銷達(dá)到傳輸效率最佳化,因而特別適合網(wǎng)絡(luò)流媒體的應(yīng)用。1.1mpeg-4封裝層次實(shí)現(xiàn)基于MPEG-4的網(wǎng)絡(luò)流媒體系統(tǒng)的關(guān)鍵是如何將MPEG-4的媒體數(shù)據(jù)封裝成RTP包。MPEG-4擁有一個(gè)開(kāi)放體系結(jié)構(gòu),完整的體系結(jié)構(gòu)里包含了基本流層、同步(SyncLayer,SL)層和傳輸復(fù)合(FlexMux)層等。在互聯(lián)網(wǎng)上既可實(shí)現(xiàn)簡(jiǎn)化的MPEG-4體系結(jié)構(gòu),也可實(shí)現(xiàn)完整的MPEG-4體系結(jié)構(gòu)。MPEG-4的RTP封裝,對(duì)應(yīng)MPEG-4體系結(jié)構(gòu)的層次,封裝的層次越高,其所需要的附加載荷就越多,相應(yīng)的解包和封包的復(fù)雜度就越大;封裝的層次越高,對(duì)媒體的感知能力就越低,對(duì)于媒體的差錯(cuò)處理能力越低。但封裝的層次越高,其支持的MPEG-4的特性就越多。以下是現(xiàn)有的幾種封裝方案。(1)視頻封裝單元描述將MPEG-4的音/視頻數(shù)據(jù)直接分布并映射到RTP包里的方法。對(duì)于視頻,該封裝規(guī)則以視頻對(duì)象平面(VideoObjectPlane,VOP)作為封裝的基本單元;對(duì)于音頻,該標(biāo)準(zhǔn)采用了低耗MPEG-4音頻復(fù)合傳輸(Low-overheadMPEG-4AudioTransportMultiplex,LATM)來(lái)管理音頻數(shù)據(jù)序列。(2)mpeg-4中的時(shí)間信息它也是針對(duì)基本流數(shù)據(jù)封裝定義的方案,該草案以訪問(wèn)單元(AccssUnit,AU)為封裝的基本單元,訪問(wèn)單元是MPEG-4中擁有時(shí)間信息的最小邏輯單元。該草案主要定義了如何將幾個(gè)訪問(wèn)單元串聯(lián)封裝到一個(gè)RTP包里及如何實(shí)現(xiàn)訪問(wèn)單元的交叉存放的方法。(3)隨機(jī)訪問(wèn)單元它是以simple-05為基礎(chǔ)的,定義了RTP封裝基本流數(shù)據(jù)的方案。支持訪問(wèn)單元的串聯(lián)、分割和交叉存放,支持系統(tǒng)流的隨機(jī)訪問(wèn)。該標(biāo)準(zhǔn)定義了RTP包的格式、MPEG-4流傳輸?shù)哪P秃驮L問(wèn)單元交叉存放的方法。以上基本流層封裝的方案都是媒體感知的,可以根據(jù)網(wǎng)絡(luò)狀況來(lái)調(diào)節(jié)媒體的封裝甚至媒體的壓縮方式;通過(guò)交叉存放還有利于基本流的錯(cuò)誤隱藏;其需要的附加信息最小,解包和封包的復(fù)雜度最小。缺點(diǎn)是:如果基本流很多的話,還會(huì)導(dǎo)致流會(huì)話管理的復(fù)雜化。(4)同步層流封裝壓包它定義了RTP傳輸同步流的方案。其基本封裝單元是同步層包。由于RTP協(xié)議和MPEG-4的同步層都具有同步功能,而且RTP的同步功能通過(guò)復(fù)制了一些由同步層包頭提供的信息來(lái)實(shí)現(xiàn),所以將同步層包頭部與RTP包頭部間冗余的信息去掉,將剩余的信息分成載荷頭部域和保留同步層頭部域兩部分填充到RTP包的頭部。一個(gè)或者多個(gè)同步層包封裝到一個(gè)RTP包里,不會(huì)發(fā)生同步包分割的情況。同步層流封裝方案可以支持處理復(fù)雜的交互場(chǎng)景的應(yīng)用和包括圖像、音頻、視頻等多種對(duì)象的應(yīng)用,也支持需要數(shù)字權(quán)力管理的應(yīng)用,還可以與MPEG的其他標(biāo)準(zhǔn)(如MPEG-7/21)結(jié)合以支持需要內(nèi)容管理的應(yīng)用。缺點(diǎn)是:沒(méi)有解決對(duì)象多的時(shí)候流通道過(guò)多的問(wèn)題;由于是媒體不感知型,所以對(duì)流的差錯(cuò)處理能力較弱。(5)傳輸封裝方案它定義了RTP傳輸MPEG-4復(fù)合流的方案。其封裝的基本單元是復(fù)合包。一個(gè)或者多個(gè)完整的MPEG-4復(fù)合包直接映射到RTP包里,而傳輸封裝方案既可以處理復(fù)雜場(chǎng)景和多種對(duì)象的應(yīng)用環(huán)境,也可以將多個(gè)流復(fù)合成一個(gè)流或者若干個(gè)流,減少流會(huì)話管理開(kāi)銷。缺點(diǎn)是:封裝所需的附加信息較多,封包和解包的復(fù)雜度較大,服務(wù)端的復(fù)雜度較大,流的差錯(cuò)處理能力較弱。1.2流封裝方案設(shè)計(jì)對(duì)于如電影等數(shù)據(jù),一般來(lái)說(shuō)流的數(shù)量較少,通常只有一個(gè)視頻流、一個(gè)音頻流和一個(gè)對(duì)象描述流、一個(gè)場(chǎng)景描述流,而且兩個(gè)系統(tǒng)流的信息很少。采用基于RFC3640的基本流封裝方案,既可以減少開(kāi)銷,也可以提供差錯(cuò)處理能力。對(duì)于系統(tǒng)流信息,通過(guò)帶外方式也就是由SDP來(lái)提供。在具體的實(shí)現(xiàn)中,針對(duì)視頻和音頻的特性進(jìn)行了如下改進(jìn)和簡(jiǎn)化:①采用了解碼時(shí)間戳(DecodeTimeStamp,DTS)而不是合成時(shí)間戳(ComposeTimeStamp,CTS)作為RTP時(shí)間戳,因?yàn)楹铣蓵r(shí)間戳在MP4文件格式里并不是必須的;②對(duì)大的訪問(wèn)單元的分割做了一定的設(shè)計(jì),以減少包丟失的影響;③對(duì)串聯(lián)訪問(wèn)單元所需的附加載荷進(jìn)行了簡(jiǎn)化。1.2.1視頻監(jiān)控的rtp封裝視頻幀一般都比較大,這里把用訪問(wèn)單元組織的視頻數(shù)據(jù)直接當(dāng)成RTP載荷封裝到RTP包里,不考慮幾個(gè)訪問(wèn)單元串聯(lián)封裝的情況。也就是說(shuō),一個(gè)RTP包載荷要么是一個(gè)訪問(wèn)單元,要么是一個(gè)訪問(wèn)單元片斷。RTP頭部域中的填充位P和擴(kuò)展位X都應(yīng)該置為0;它的標(biāo)志位M在當(dāng)載荷為完整的訪問(wèn)單元或者一個(gè)訪問(wèn)單元分割之后的最后一個(gè)片斷時(shí)置為1,否則置為0;它的時(shí)間戳采用載荷內(nèi)第一個(gè)訪問(wèn)單元的解碼時(shí)間戳再加上一個(gè)隨機(jī)數(shù)的初始值;其余的RTP頭部各項(xiàng)的含義參照RFC1889的規(guī)定。MPEG-4視頻的RTP封裝格式如圖1所示。對(duì)于視頻流,有些訪問(wèn)單元(一般為包含I幀數(shù)據(jù)的訪問(wèn)單元)大于Path-MTU,封裝大于Path-MTU的數(shù)據(jù)到一個(gè)RTP包里會(huì)導(dǎo)致下層的分包,不利于RTP處理,所以必須將大的訪問(wèn)單元分割到不同的RTP包里,但是已有的標(biāo)準(zhǔn)和草案都沒(méi)有提出如何有效地分割這些大的訪問(wèn)單元。為了減少RTP包之間的依賴,避免一個(gè)RTP包的丟失導(dǎo)致相鄰順序多個(gè)RTP包不可用,當(dāng)需要對(duì)大的訪問(wèn)單元進(jìn)行分割的時(shí)候,采用同步字作為割點(diǎn)。分割后,一個(gè)RTP包載荷必須是完整的一個(gè)或者多個(gè)由同步字邏輯劃分的單元,這樣當(dāng)有RTP包丟失的情況下,其余RTP包內(nèi)的同步字所屬的數(shù)據(jù)還可以單獨(dú)解碼;在沒(méi)有同步字的編碼文件里,采用宏塊作為分割點(diǎn),這樣單個(gè)RTP包丟失只是丟失視頻文件的一部分宏塊,其余RTP包里的宏塊仍可以解碼。1.2.2length的使用對(duì)音頻來(lái)說(shuō),因?yàn)橐纛l幀一般比較小,如果采用64kbits的AAC編碼,每個(gè)音頻幀平均只有200字節(jié),有必要將幾個(gè)音頻幀的訪問(wèn)單元串聯(lián)起來(lái)封裝到一個(gè)RTP包里。為了減少?gòu)?fù)雜度,不考慮將訪問(wèn)單元分割封裝到不同的RTP包里的情況,也就是說(shuō)RTP包載荷為完整的訪問(wèn)單元,沒(méi)有任何一個(gè)RTP包的載荷是訪問(wèn)單元片斷。具體的封裝格式如圖2所示。RTP頭部的格式同圖1的RTPHeader域,其中標(biāo)志位始終置為1,其余字段的含義與視頻封裝相同。AUDataSection是按字節(jié)對(duì)齊的完整音頻訪問(wèn)單元數(shù)據(jù)。AUHeaderSection包含一個(gè)AUHeaderLength,至少一個(gè)AU-herader和填充位(可選)。AUHeaderLength為兩個(gè)字節(jié),指示包括填充位在內(nèi)的以bit為單位的長(zhǎng)度。填充位是為了字節(jié)對(duì)齊,最多七位。每個(gè)AUHeader域都與AUData域里的一個(gè)訪問(wèn)單元相對(duì)應(yīng),順序也對(duì)應(yīng)。其中:AU-size,對(duì)應(yīng)訪問(wèn)單元的以字節(jié)為單位的大小。AU-Index/AU-Index-delta,AU-Index指示對(duì)應(yīng)訪問(wèn)單元的系列號(hào)。訪問(wèn)單元的系列號(hào)按解碼順序依次加1。AU-Index只有在第一個(gè)AU-header里出現(xiàn),后續(xù)的AU-header里只有AU-Index-delta。AU-Index-delta指示了相關(guān)的訪問(wèn)單元的Index與前一個(gè)訪問(wèn)單元的Index之間的差值。如果訪問(wèn)單元是按照解碼順序存放的,那么該項(xiàng)填0。DTS-flag,DTS-delta,DTS-flag用來(lái)指示是否接下來(lái)有DTS-flag域,在第一個(gè)AU-header里該位一定置為0(因?yàn)樵撛L問(wèn)單元的解碼時(shí)間戳在RTP頭部信息的時(shí)間戳里),后邊的AU-header里該位可以置為1。DTS-delta表明其對(duì)應(yīng)的訪問(wèn)單元與RTP頭部的時(shí)間戳之間的差值。CTS-flag,CTS-delta,CTS-flag用來(lái)指示是否接下來(lái)有CTS-flag域。CTS-delta指明了該訪問(wèn)單元的合成時(shí)間戳和解碼時(shí)間戳之間的差值。合成時(shí)間戳和解碼時(shí)間戳要有相同的時(shí)間戳單位。RAP-flag,指示一個(gè)訪問(wèn)單元是否是隨機(jī)訪問(wèn)單元,是則置為1。AUHeader域的各項(xiàng)中,AU-size和AU-Index/AU-Index-delta項(xiàng)是必須的,其余各項(xiàng)都是可選的,當(dāng)串聯(lián)的訪問(wèn)單元的持續(xù)時(shí)間有不相同的時(shí)候必須要指定解碼時(shí)間戳項(xiàng),當(dāng)有訪問(wèn)單元的合成時(shí)間戳和解碼時(shí)間戳的差值不同的時(shí)候必須要指定合成時(shí)間戳項(xiàng)。CTS-flag,DTS-flag和RAP-flag是否存在(如果存在則占一位),其余各項(xiàng)占多少位都通過(guò)帶外方式(SDP)給出。2rfc3013封裝規(guī)則MPEG-4的RTP封裝技術(shù)可以應(yīng)用到網(wǎng)絡(luò)實(shí)時(shí)傳輸和視頻點(diǎn)播中,但是已有的系統(tǒng)大都采用的是RFC3016定義的封裝規(guī)則。這個(gè)封裝規(guī)則在音頻封裝時(shí)采用了LATM管理音頻數(shù)據(jù),它沒(méi)有提供對(duì)系統(tǒng)流數(shù)據(jù)封裝的支持,隨著MPEG-4的發(fā)展,LATM的作用正逐漸被標(biāo)準(zhǔn)的RTP協(xié)議封裝規(guī)則所替代。2.1視頻解碼模塊我們研究的原型系統(tǒng)是一個(gè)分布式視頻點(diǎn)播系統(tǒng),系統(tǒng)邏輯上劃分成節(jié)目中心和播放中心,節(jié)目中心保存所有節(jié)目,播放中心保存部分熱播節(jié)目,用戶的點(diǎn)播請(qǐng)求將主要集中在播放中心,從而提高了系統(tǒng)的可擴(kuò)展性,同時(shí)降低了主干網(wǎng)絡(luò)的帶寬需求。播放中心的邏輯結(jié)構(gòu)如圖3所示,它支持MP4文件格式,可以響應(yīng)用戶對(duì)MP4文件的點(diǎn)播、暫停、拖動(dòng)、關(guān)閉等請(qǐng)求。其中RTSP(Real-StreamingProtocol,實(shí)時(shí)流協(xié)議)是由IETF定義的一個(gè)應(yīng)用層協(xié)議,主要用于建立及控制一個(gè)或幾個(gè)實(shí)時(shí)數(shù)據(jù)流的傳輸。2.2rtpstep封裝RTSP會(huì)話負(fù)責(zé)為每個(gè)用戶點(diǎn)播建立一個(gè)會(huì)話,同時(shí)負(fù)責(zé)處理用戶的各種操作請(qǐng)求。每個(gè)會(huì)話對(duì)應(yīng)于一個(gè)用戶的一次點(diǎn)播行為,也對(duì)應(yīng)一個(gè)MP4文件,但是該文件可能包含若干個(gè)流(音/視頻)。MP4文件分為兩個(gè)部分:元數(shù)據(jù)(Meta-data)和媒體數(shù)據(jù)(Media-data)。其中媒體數(shù)據(jù)存放的是所有的音/視頻數(shù)據(jù)和系統(tǒng)流數(shù)據(jù),元數(shù)據(jù)是對(duì)媒體數(shù)據(jù)的描述。MP4文件解析模塊負(fù)責(zé)解析MP4文件的元數(shù)據(jù)域,組合出對(duì)該文件的SDP描述,得到文件所包含的流的個(gè)數(shù)及其信息用于創(chuàng)建相應(yīng)的流源。RTPStream對(duì)應(yīng)MP4文件中的一個(gè)音頻流或者一個(gè)視頻流,也是一個(gè)分層視頻中的一層。RTPStream模塊負(fù)責(zé)調(diào)度從流源中取得媒體數(shù)據(jù),然后經(jīng)RTP封裝后發(fā)送到客戶端,并進(jìn)行初步的流量控制。流源模塊負(fù)責(zé)從文件中讀取媒體數(shù)據(jù),并按照RTP的封裝要求組織數(shù)據(jù);負(fù)責(zé)在用戶拖動(dòng)的時(shí)候?qū)ふ业脚c播放時(shí)間對(duì)應(yīng)的文件位置。RTP封裝模塊負(fù)責(zé)按照RTP規(guī)范和之前描述的MPEG-4數(shù)據(jù)的RTP封裝方案將媒體數(shù)據(jù)封裝成RTP包并將其發(fā)送到客戶端。RTCP處理模塊負(fù)責(zé)處理RTCP信息??蛻舳瞬捎昧薗uickTime6.0。2.3rtp封裝文件特征(1)客戶端發(fā)送一個(gè)DISCRIBE請(qǐng)求給RTSPSession。(2)服務(wù)器端RTSPSession接到請(qǐng)求后建立一個(gè)會(huì)話,同時(shí)建立一個(gè)關(guān)聯(lián)的MP4文件解析對(duì)象。(3)解析相應(yīng)的MP4文件,得到該文件的SDP描述、流信息。(4)RTSPSession將取得的SDP描述反饋給客戶端。(5)客戶端接收到SDP信息后,根據(jù)SDP信息發(fā)送一個(gè)或者多個(gè)SETUP請(qǐng)求。(6)RTSPSession根據(jù)SETUP請(qǐng)求的信息創(chuàng)建相應(yīng)的RTPStream對(duì)象和流源對(duì)象,并反饋客戶端請(qǐng)求處理的情況。(7)客戶端在所有流請(qǐng)求建立后發(fā)送一個(gè)PLAY請(qǐng)求。
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版體育賽事運(yùn)營(yíng)權(quán)收購(gòu)協(xié)議書范本(含贊助商權(quán)益)3篇
- 農(nóng)業(yè)科技項(xiàng)目2025年度市場(chǎng)開(kāi)發(fā)與品牌建設(shè)合同3篇
- 2025版二零二五民辦學(xué)校教師職業(yè)發(fā)展規(guī)劃聘用協(xié)議4篇
- 2025年度美容美發(fā)行業(yè)技師勞動(dòng)合同續(xù)簽條件合同4篇
- 2025年度美甲店品牌形象保護(hù)與侵權(quán)糾紛處理合同4篇
- 二零二五年度車牌租賃經(jīng)營(yíng)合作協(xié)議范本3篇
- 2025年高科技研發(fā)中心投資合作框架協(xié)議3篇
- 2025年度綠化工程進(jìn)度跟蹤與管理合同4篇
- 2025年攤位電子支付系統(tǒng)合作協(xié)議3篇
- 2025年智能城市基礎(chǔ)設(shè)施建設(shè)土地買賣合同范例3篇
- 2024年住院醫(yī)師規(guī)范化培訓(xùn)師資培訓(xùn)理論考試試題
- 期末綜合測(cè)試卷(試題)-2024-2025學(xué)年五年級(jí)上冊(cè)數(shù)學(xué)人教版
- 2024年廣東省公務(wù)員錄用考試《行測(cè)》試題及答案解析
- 結(jié)構(gòu)力學(xué)本構(gòu)模型:斷裂力學(xué)模型:斷裂力學(xué)實(shí)驗(yàn)技術(shù)教程
- 黑色素的合成與美白產(chǎn)品的研究進(jìn)展
- 金蓉顆粒-臨床用藥解讀
- 法治副校長(zhǎng)專題培訓(xùn)課件
- 《幼兒園健康》課件精1
- 汽車、電動(dòng)車電池火災(zāi)應(yīng)對(duì)
- 中醫(yī)藥適宜培訓(xùn)-刮痧療法教學(xué)課件
- 免疫組化he染色fishish
評(píng)論
0/150
提交評(píng)論