首頁(yè)>>>技術(shù)>>>視像通信  視像通信產(chǎn)品

Internet視頻傳輸中的關(guān)鍵技術(shù)分析

楊明川 解沖鋒 2002/12/31

1、前言

  隨著Internet帶寬的不斷增長(zhǎng),基于流媒體(stream media)傳輸?shù)囊曨l應(yīng)用得到了迅速的發(fā)展。在Internet上傳輸視頻的相關(guān)技術(shù)也成為Internet節(jié)研究和開(kāi)發(fā)的熱點(diǎn)。目前,許多實(shí)驗(yàn)性的高速寬帶網(wǎng)絡(luò)都把視頻傳輸?shù)募夹g(shù)和應(yīng)用作為研究的重點(diǎn)課題。美國(guó)的Internet 2(I2)研究計(jì)劃中成立了數(shù)字視頻研究組(Digital Video Initiative)作為I2應(yīng)用開(kāi)發(fā)的重要部分。I2的應(yīng)用開(kāi)發(fā)組認(rèn)為數(shù)字視頻是帶來(lái)最廣泛的利益和最廣泛的利用I2能力的應(yīng)用,它可以覆蓋從點(diǎn)播到遠(yuǎn)程的資源控制的應(yīng)用。中國(guó)的3Tnet研究計(jì)劃中也明確提出要開(kāi)發(fā)高速網(wǎng)絡(luò)中的流媒體相關(guān)技術(shù),實(shí)現(xiàn)HDTV等視頻應(yīng)用。

  在Internet上傳輸視頻有許多困難,其根本的原因在于Internet的無(wú)連接每包轉(zhuǎn)發(fā)機(jī)制主要為突發(fā)性的數(shù)據(jù)傳輸設(shè)計(jì),不適用于對(duì)連續(xù)媒體流的傳輸。為了在Internet上有效的、高質(zhì)量的傳輸視頻流,需要多種技術(shù)的支持。本文主要介紹了Internet視頻傳輸中的一些關(guān)鍵技術(shù),包括視頻的壓縮、編碼技術(shù),應(yīng)用層質(zhì)量控制技術(shù),連續(xù)媒體分布服務(wù)技術(shù),媒體同步技術(shù)和數(shù)字版權(quán)管理技術(shù)等。

2、視頻壓縮、編碼技術(shù)

  通常的視頻壓縮可以分為可擴(kuò)展(scalable)的壓縮和不可擴(kuò)展(unscalable)的壓縮。其中不可擴(kuò)展的壓縮是指只生成一個(gè)位流(bit-stream),而可擴(kuò)展的壓縮生成多個(gè)子位流(substream),其中一個(gè)位流是基本位流,它可以獨(dú)立解碼,輸出粗糙質(zhì)量的視頻序列。其他的子位流則起質(zhì)量增強(qiáng)的作用。所有的子位流一起還原出最好質(zhì)量的視頻序列。相應(yīng)的,僅有部分的子位流(必須包含基本子位流)則輸出的視頻在圖像的質(zhì)量,或者大小或者幀速率上較差。這三個(gè)方面構(gòu)成了壓縮在質(zhì)量信噪比(SNR),空間和時(shí)間上的擴(kuò)展性編碼。具體的可擴(kuò)展壓縮選擇其中的某一種或幾種實(shí)現(xiàn)擴(kuò)展性。為了提供更好的靈活性,滿足不同的延遲要求,一種新的被稱為細(xì)粒度擴(kuò)展性(FGS)的壓縮機(jī)制被提交給MPEG-4。FGS壓縮把視頻壓縮成兩個(gè)位流:基本層位流和增強(qiáng)層位流。與SNR擴(kuò)展性的編碼不同,F(xiàn)GS采用bitplane編碼。它可以實(shí)現(xiàn)連續(xù)的增強(qiáng)層速率控制。一個(gè)FGS編碼的變體是PFGS(Progressive FGS)編碼,除了具有FGS的基本優(yōu)點(diǎn)外,PFGS可以實(shí)現(xiàn)超過(guò)兩個(gè)位流層,具有更好的預(yù)測(cè)和錯(cuò)誤恢復(fù)能力。

  在實(shí)際系統(tǒng)中已經(jīng)開(kāi)發(fā)了多種編碼的格式,主要包括rm,wma,asf,divx等。其中Windows Mediaz最新發(fā)布的windows media encoding utility v8.0 beta包含了windows media audio 8(音頻)和windows media video 8(視頻)兩部分壓縮編碼系統(tǒng)。windows media video 8采用了的MPEG-4視頻壓縮技術(shù),實(shí)現(xiàn)了在500kbps傳送速率下提供接近于dvd質(zhì)量(near-DVD quality)的畫(huà)面(分辨率640×480,每秒24幀)。 windows media video 8為電影在線下載觀看做了優(yōu)化,支持true-vbr(真正動(dòng)態(tài)變量速率編碼)。Real Networks公司最新發(fā)布的real producer 8.5在制作rm文件上采用自己開(kāi)發(fā)的real g2 codec,它具有很多先進(jìn)的設(shè)計(jì),例如,svt(scalable video technology),雙向編碼(two-encoding)。雙向編碼類似于vbr,它可通過(guò)預(yù)先掃描整個(gè)影片,根據(jù)帶寬的限制選擇最優(yōu)化壓縮碼率。

3、應(yīng)用層質(zhì)量控制技術(shù)

  應(yīng)用層質(zhì)量控制技術(shù)的主要目的是保證在視頻傳輸過(guò)程改善質(zhì)量。主要包括擁塞控制和差錯(cuò)控制等幾方面。采用質(zhì)量控制的原因很多,一個(gè)主要的原因是目前的Internet只提供Best-effort的服務(wù),沒(méi)有質(zhì)量保證。因此,需要通過(guò)應(yīng)用層的機(jī)制來(lái)實(shí)現(xiàn)質(zhì)量的控制。擁塞控制的目的是避免因?yàn)榫W(wǎng)絡(luò)擁塞導(dǎo)致包丟失而造成的質(zhì)量下降。對(duì)于視頻流,擁塞控制的主要方法是速率控制。速率控制的目的是基于預(yù)測(cè)的網(wǎng)絡(luò)帶寬決定發(fā)送的速率。有兩種基本的速率控制手段,基于發(fā)送端的速率控制和基于接受端的速率控制。前者主要基于反饋信息進(jìn)行速率調(diào)節(jié)?梢赃m用于單播的方式或組播的方式。對(duì)于單播的方式,有兩種速率控制方法,基于探測(cè)的方法(probe-based)和基于模型的方法(model-based);谔綔y(cè)的方法通過(guò)不斷調(diào)整速率使得包的丟失率低于一個(gè)固定的概率值;谀P偷姆椒ㄖ苯永肨CP的吞吐率模型計(jì)算速率。因此,模型法也被稱為T(mén)CP友好的速率控制方法。對(duì)于單通道的組播,只能采用基于探測(cè)的方法。在基于接受方的速率控制中,發(fā)送方不參與速率控制,而由接受方通過(guò)增加和減少通道的數(shù)量來(lái)進(jìn)行速率的調(diào)整。通常,這種方法用于采用可擴(kuò)展編碼的組播的情況,組播的視頻流分為多層,每個(gè)層對(duì)應(yīng)組播樹(shù)的一個(gè)通道。接受方通過(guò)增加減少通道獲得不同的質(zhì)量;诮邮芊降乃俾士刂埔部梢苑譃榛谔綔y(cè)的方法和基于模型的方法。除了基于發(fā)送方的速率控制和基于接受方的速率控制方法以外,還有一個(gè)稱為混合性速率控制的方法,兼有二者的特點(diǎn),即接受方增加減少通道,而發(fā)送方同時(shí)根據(jù)反饋調(diào)整各個(gè)通道的速率。混合速率控制方法的一個(gè)例子是目標(biāo)集分組的方法。

  當(dāng)基于發(fā)送方的速率控制決定了發(fā)送的速率之后,一個(gè)必須的操作是調(diào)節(jié)原始的壓縮流的速率以滿足目標(biāo)速率的要求,這通過(guò)速率整形來(lái)實(shí)現(xiàn)。典型的速率調(diào)節(jié)方法根據(jù)編碼的擴(kuò)展性方法來(lái)實(shí)現(xiàn)。包括:a) 幀丟棄過(guò)濾,它可以區(qū)分不同的幀,如MPEG編碼的I幀,B幀,P幀。根據(jù)幀的重要性丟棄幀(先B幀,在P幀,最后I幀)。b) 分層丟棄過(guò)濾;c)頻率過(guò)濾。

  擁塞控制的目的是減少包的丟失,但是無(wú)法避免包的丟失。在這種情況下,可能需要一定的差錯(cuò)控制機(jī)制。差錯(cuò)控制機(jī)制包括:a) FEC,F(xiàn)EC的目的是通過(guò)增加冗余信息使得包丟失后能夠通過(guò)其他包恢復(fù)出正確的信息。b)延遲約束的重傳。通常流的播放有時(shí)間限制,因此,僅有當(dāng)重傳的時(shí)間小于正常的播放時(shí)間時(shí),重傳才是有價(jià)值的。c)錯(cuò)誤彈性編碼(Error-Resilient Encoding):在編碼中通過(guò)適當(dāng)?shù)目刂剖沟冒l(fā)生數(shù)據(jù)的丟失后能夠最大限度的減少對(duì)質(zhì)量的影響。在Internet環(huán)境下,最典型的方法是多描述編碼(MDC)。MDC把原始的視頻序列壓縮成多位流,每個(gè)流對(duì)應(yīng)一種描述,都可以提供可接受的視覺(jué)質(zhì)量。多個(gè)描述結(jié)合起來(lái)提供更好的質(zhì)量。該方法的優(yōu)點(diǎn)是實(shí)現(xiàn)了對(duì)數(shù)據(jù)丟失的健壯性和增強(qiáng)的質(zhì)量。其缺點(diǎn)是相比單描述編碼(SDC),它在壓縮的效率上受到影響。而且由于在多描述之間必須加入一定的相關(guān)性信息,這進(jìn)一步降低了壓縮的效率。D)錯(cuò)誤的取消(cancealment):錯(cuò)誤的取消是指當(dāng)錯(cuò)誤已經(jīng)發(fā)生后,接受端通過(guò)一定的方法盡量削弱對(duì)人的視覺(jué)影響。主要的方法是時(shí)間和空間的插值(Interpolation)。近年來(lái)的研究還包括最大平滑恢復(fù),運(yùn)動(dòng)補(bǔ)償時(shí)間預(yù)測(cè)等。

  在目前的商用流媒體系統(tǒng)中,Real Networks采用了大量的應(yīng)用層質(zhì)量控制技術(shù)來(lái)提高流傳輸?shù)馁|(zhì)量。在RealVideo采用了抗損壞(damage-resistant)的編碼來(lái)減少包丟失的影響,當(dāng)幀的速率很小的時(shí)候,還采用了FEC技術(shù)。RealVideo支持兩種編碼:RealVideo standard和RealVideo fractal。前者可以支持從10k到500k的編碼速率,而且特別為28.8k和56k進(jìn)行了優(yōu)化。為了適應(yīng)網(wǎng)絡(luò)速率的變化,Real Networks采用了Sure Stream技術(shù),該技術(shù)可以避免速率使用機(jī)制不能對(duì)每個(gè)速率進(jìn)行優(yōu)化的缺點(diǎn)。具體的方法是:首先在一個(gè)文件中同時(shí)存儲(chǔ)用不同速率編碼的媒體流,其次,通過(guò)在服務(wù)器和客戶之間監(jiān)測(cè)帶寬的變化來(lái)動(dòng)態(tài)的決定使用那個(gè)速率的流。這個(gè)技術(shù)的主要缺點(diǎn)在于不能適應(yīng)速率的連續(xù)控制。

4、連續(xù)媒體分布服務(wù)

  傳統(tǒng)的視頻傳輸基于單一的流媒體服務(wù)器。但是單一的服務(wù)器在性能上是不可擴(kuò)展的,而且傳輸?shù)馁|(zhì)量受底層網(wǎng)絡(luò)傳輸質(zhì)量的限制。為了提高傳輸?shù)男阅埽幸恍┘夹g(shù)來(lái)改進(jìn)流傳輸?shù)馁|(zhì)量。連續(xù)媒體分布服務(wù)(continous media distribution services)的目的是在Internet 盡力服務(wù)(Best-effort)的基礎(chǔ)上提供服務(wù)質(zhì)量和高效的媒體傳輸。典型的方法包括:

  網(wǎng)絡(luò)過(guò)濾(Network Filtering),網(wǎng)絡(luò)過(guò)濾的基本方法是在流的發(fā)送端和接受端之間的某個(gè)網(wǎng)絡(luò)設(shè)備上插入一個(gè)網(wǎng)絡(luò)過(guò)濾器,該過(guò)濾器根據(jù)網(wǎng)絡(luò)的擁塞狀態(tài)實(shí)現(xiàn)速率的整形。和發(fā)送端的速率整形不同的是,網(wǎng)絡(luò)過(guò)濾在流媒體傳輸?shù)穆窂缴蠄?zhí)行,因此,速率整形可以在擁塞點(diǎn)進(jìn)行,這樣可以提高速率控制的效率和擁塞控制的響應(yīng)時(shí)間。而且可以在網(wǎng)絡(luò)中放置多個(gè)過(guò)濾設(shè)備實(shí)現(xiàn)更好的控制。網(wǎng)絡(luò)過(guò)濾通常采用丟幀過(guò)濾器(frame-dropping filter)。

  應(yīng)用層組播(Application-Level Multicast):基于IP層的組播技術(shù)盡管經(jīng)過(guò)了多年的研究,但是在實(shí)施上還有困難。主要的問(wèn)題包括擴(kuò)展性,網(wǎng)絡(luò)管理,實(shí)施和高層應(yīng)用的支持。應(yīng)用層的組播的目標(biāo)是在Internet上層構(gòu)建組播服務(wù)。它允許建立獨(dú)立的媒體組播網(wǎng)絡(luò)。媒體組播網(wǎng)絡(luò)可以利用內(nèi)容分布網(wǎng)絡(luò)的互連,通過(guò)在不同種類的服務(wù)提供者之間的應(yīng)用層的對(duì)等關(guān)系來(lái)構(gòu)建。在媒體組播網(wǎng)絡(luò)中,每個(gè)具有組播能力的節(jié)點(diǎn)(稱為媒體橋:MediaBridge)執(zhí)行應(yīng)用層的路由。另外,每個(gè)媒體橋和一個(gè)或多個(gè)鄰居媒體橋通過(guò)明確的配置互連,這個(gè)互連建立了應(yīng)用層重疊拓?fù)。媒體橋在媒體組播網(wǎng)絡(luò)中執(zhí)行一個(gè)分布的應(yīng)用層組播路由算法來(lái)確定一條優(yōu)化的虛擬組播路徑。應(yīng)用層組播的優(yōu)點(diǎn)是打破了IP組播的一些障礙?梢砸愿`活的方式實(shí)現(xiàn)組播控制。

  內(nèi)容傳遞網(wǎng)絡(luò)(CDN):CDN可以在總流量增加的情況下提高網(wǎng)絡(luò)傳輸?shù)男阅芎头⻊?wù)質(zhì)量,并且在一個(gè)快速變化的環(huán)境下可以為用戶保持最新的內(nèi)容。內(nèi)容傳遞網(wǎng)絡(luò)還可以支持靈活的分布式應(yīng)用。由于這些特性,內(nèi)容傳遞網(wǎng)絡(luò)可以用來(lái)傳遞流媒體內(nèi)容。一個(gè)內(nèi)容傳遞網(wǎng)絡(luò)主要包括以下一個(gè)部分:Caching和內(nèi)容傳遞,內(nèi)容的分布和管理,請(qǐng)求路由,記賬和計(jì)費(fèi)。Caching服務(wù)器存儲(chǔ)經(jīng)常請(qǐng)求的對(duì)象為用戶提供更快和更容易的傳遞。Caching和內(nèi)容傳遞是CDN的主要功能。共有三種內(nèi)容的Caching服務(wù)器:轉(zhuǎn)發(fā)代理(Forward Proxy),透明轉(zhuǎn)發(fā)(Transparent Forward),反向代理(Reverse Proxy)。內(nèi)容的分布和管理技術(shù)把內(nèi)容從源服務(wù)器分布到CDN的cache,即內(nèi)容可以通過(guò)一定的策略提前傳送或者推送到CDN節(jié)點(diǎn)。內(nèi)容分布策略對(duì)CDN的優(yōu)化起關(guān)鍵的作用。請(qǐng)求路由技術(shù)包括全局范圍內(nèi)的內(nèi)容重定向,同一個(gè)CDN網(wǎng)絡(luò)中的Cache服務(wù)器的負(fù)載均衡。有三種典型的技術(shù)實(shí)現(xiàn)請(qǐng)求路由,包括:使用動(dòng)態(tài)DNS的全局請(qǐng)求路由,在傳輸層的全局請(qǐng)求路由,在應(yīng)用層的全局請(qǐng)求路由。

  目前,Real Networks和Microsoft都提供了基于Caching/Proxy的解決方案,例如Real Networks的RealSystem Proxy。RealSystem Proxy通過(guò)一個(gè)和服務(wù)器的向后的通道(back channel)保持caching內(nèi)容的完整性。

5、媒體同步控制

  在某些流媒體應(yīng)用中,視頻流和其它形式的媒體流需要以同步的方式來(lái)集成到一起。例如遠(yuǎn)程學(xué)習(xí)中,描述學(xué)習(xí)內(nèi)容的幻燈片需要和教師授課的音頻或視頻流同步。通常有三種類型的同步控制:流內(nèi)(intra-stream)同步,流間(inter-stream)同步,對(duì)象間(inter-object)同步。媒體同步機(jī)制的核心是在媒體內(nèi)或者媒體間說(shuō)明時(shí)間關(guān)系。說(shuō)明時(shí)間關(guān)系的方法包括基于間隔的方法,基于軸的方法,基于控制流的方法和基于時(shí)間的方法。常用的說(shuō)明連續(xù)媒體的說(shuō)明方法是軸的說(shuō)明或時(shí)間戳。對(duì)與終端系統(tǒng)而言,同步機(jī)制包括阻止(preventive)機(jī)制和糾正(corrective)機(jī)制。前者是主要通過(guò)減小延遲和抖動(dòng)來(lái)減少同步錯(cuò)誤,而后者主要是在發(fā)生同步錯(cuò)誤之后恢復(fù)同步?紤]到Internet傳輸?shù)难舆t隨機(jī)性,同步錯(cuò)誤是不可避免的。因此,在接受方的錯(cuò)誤補(bǔ)償是必須的。一個(gè)糾正的機(jī)制是采用流同步協(xié)議(Stream synchronization protocol),該協(xié)議使用期望延遲(Intentional delay)的概念在不同的媒體流之間調(diào)整表述時(shí)間以恢復(fù)網(wǎng)絡(luò)延遲的變化。

  同步多媒體集成語(yǔ)言(SMIL:Synchronized Multimedia Integration Language)是由3W(World Wide Web Consortium)組織規(guī)定的多媒體操縱語(yǔ)言?梢詫(shí)現(xiàn)多個(gè)流和文本信息在播放時(shí)的時(shí)間同步控制和空間位置布置。通過(guò)SMIL還可以實(shí)現(xiàn)一定的用戶交互功能。

6、數(shù)字版權(quán)管理(DRM)

  DRM是保護(hù)多媒體內(nèi)容免受未經(jīng)授權(quán)的播放和復(fù)制的一種方法。它為內(nèi)容提供者保護(hù)他們的私有音樂(lè)或其他數(shù)據(jù)免受非法復(fù)制和使用提供了一種手段。DRM技術(shù)通過(guò)對(duì)數(shù)字內(nèi)容進(jìn)行加密和附加使用規(guī)則對(duì)數(shù)字內(nèi)容進(jìn)行保護(hù),其中,使用規(guī)則可以斷定用戶是否符合播放數(shù)字內(nèi)容的條件。使用規(guī)則一般可以防止內(nèi)容被復(fù)制或者限制內(nèi)容的播放次數(shù)。操作系統(tǒng)和多媒體中間件負(fù)責(zé)強(qiáng)制實(shí)行這些規(guī)則。

  目前,Microsoft提供了完整的DRM的解決方案,包括實(shí)現(xiàn)DRM的體系結(jié)構(gòu)和實(shí)現(xiàn)二次開(kāi)發(fā)的SDK。微軟的DRM方案中采用軟件加密,速度可以達(dá)到10M/s,采用采用RC4, DES, 3DES對(duì)稱加密算法加密數(shù)字內(nèi)容,采用非對(duì)稱算法RSA、ECC進(jìn)行身份驗(yàn)證和加密內(nèi)容加密密鑰。

7.結(jié)束語(yǔ)

  目前,基于Internet視頻傳輸?shù)牧髅襟w應(yīng)用和業(yè)務(wù)在國(guó)內(nèi)得到了迅速的發(fā)展。各種應(yīng)用,包括視頻會(huì)議、視頻點(diǎn)播、Internet電視、遠(yuǎn)程教學(xué)等都在逐步推廣。在Internet中傳輸視頻的各項(xiàng)技術(shù)也得到了越來(lái)越多的應(yīng)用,并不斷發(fā)展。可以預(yù)計(jì),基于視頻傳輸?shù)膶拵Я髅襟w應(yīng)用必將成為未來(lái)的Internet的主流應(yīng)用之一。

中國(guó)電信(www.chinatelecom.com.cn)


相關(guān)鏈接:
開(kāi)放性引領(lǐng)視訊未來(lái) 2002-12-19
基于H.323協(xié)議的IP視頻會(huì)議質(zhì)量技術(shù) 2002-12-13
打破視頻會(huì)議在運(yùn)營(yíng)中的瓶頸 2002-12-12
視訊終端走向"開(kāi)放" 2002-12-09
淺談可運(yùn)營(yíng)視訊業(yè)務(wù) 2002-12-06

分類信息:     文摘   技術(shù)_視像通訊_文摘