流媒體技術(shù)

流媒體的定義

這個過程的一系列相關(guān)的包稱為流媒體實際指的是一種新的媒體傳送方式,而非一種新的媒體語音輸入;如果想彼此看見對方的容貌、表情,只要雙方各有一個攝像頭就可以了;在網(wǎng)上看到感興趣的商品,點擊以后,講解員和商品的影像就會跳出來;更有真實感的影像新聞也會出現(xiàn)。

 

流媒體的技術(shù)

  一、流式傳輸?shù)幕A(chǔ)

  在網(wǎng)絡(luò)上傳輸音/視頻等多媒體信息,目前主要有下載流式傳輸兩種方案。A/V文件一般都較大,所以需要的存儲容量也較大;同時由于網(wǎng)絡(luò)帶寬的限制,下載常常要花數(shù)分鐘甚至數(shù)小時,所以這種處理方法延遲也很大流式傳輸時,聲音、影像或動畫等時基媒體由音視頻服務(wù)器向用戶計算機的連續(xù)、實時傳送,用戶不必等到整個文件全部下載完畢,而只需經(jīng)過幾秒或十?dāng)?shù)秒的啟動延時即可進行觀看。當(dāng)聲音等時基媒體在客戶機上播放時,文件的剩余部分將在后臺從服務(wù)器內(nèi)繼續(xù)下載。流式不僅使啟動延時成十倍、百倍地縮短,而且不需要太大的緩存容量。流式傳輸避免了用戶必須等待整個文件全部從Internet上下載才能觀看的缺點。

  流媒體實現(xiàn)的關(guān)鍵技術(shù)就是流式傳輸。

  流式傳輸定義很廣泛,現(xiàn)在主要指通過網(wǎng)絡(luò)傳送媒體(如視頻音頻)的技術(shù)總稱。其特定含義為通過Internet 將影視節(jié)目傳送到PC機。實現(xiàn)流式傳輸有兩種方法:實時流式傳輸(Realtime streaming)和順序流式傳輸progressive streaming)。一般說來,如視頻為實時廣播,或使用流式傳輸媒體服務(wù)器,或應(yīng)用如RTSP的實時協(xié)議,即為實時流式傳輸。如使用HTTP服務(wù)器,文件即通過順序流發(fā)送。采用那種傳輸方法依賴你的需求。當(dāng)然,流式文件也支持在播放前完全下載到硬盤。

  順序流式傳輸

  順序流式傳輸是順序下載,在下載文件的同時用戶可觀看在線媒體,在給定時刻,用戶只能觀看已下載的那部分,而不能跳到還未下載的前頭部分,順序流式傳輸不象實時流式傳輸在傳輸期間根據(jù)用戶連接的速度做調(diào)整。由于標(biāo)準(zhǔn)的HTTP服務(wù)器可發(fā)送這種形式的文件,也不需要其他特殊協(xié)議,它經(jīng)常被稱作HTTP流式傳輸。順序流式傳輸比較適合高質(zhì)量的短片段,如片頭、片尾和廣告,由于該文件在播放前觀看的部分是無損下載的,這種方法保證電影播放的最終質(zhì)量。這意味著用戶在觀看前,必須經(jīng)歷延遲,對較慢的連接尤其如此。對通過調(diào)制解調(diào)器發(fā)布短片段,順序流式傳輸顯得很實用,它允許用比調(diào)制解調(diào)器更高的數(shù)據(jù)速率創(chuàng)建視頻片段。盡管有延遲,畢竟可讓你發(fā)布較高質(zhì)量的視頻片段。順序流式文件是放在標(biāo)準(zhǔn)HTTP FTP服務(wù)器上,易于管理,基本上與防火墻無關(guān)。順序流式傳輸不適合長片段和有隨機訪問要求的視頻,如:講座、演說與演示。它也不支持現(xiàn)場廣播,嚴(yán)格說來,它是一種點播技術(shù)。

  實時流式傳輸

  實時流式傳輸指保證媒體信號帶寬與網(wǎng)絡(luò)連接配匹,使媒體可被實時觀看到。實時流與HTTP流式傳輸不同,他需要專用的流媒體服務(wù)器與傳輸協(xié)議。實時流式傳輸總是實時傳送,特別適合現(xiàn)場事件,也支持隨機訪問,用戶可快進或后退以觀看前面或后面的內(nèi)容。理論上,實時流一經(jīng)播放就可不停止,但實際上,可能發(fā)生周期暫停。實時流式傳輸必須配匹連接帶寬,這意味著在以調(diào)制解調(diào)器速度連接時圖象質(zhì)量較差。而且,由于出錯丟失的信息被忽略掉,網(wǎng)絡(luò)擁擠或出現(xiàn)問題時,視頻質(zhì)量很差。如欲保證視頻質(zhì)量,順序流式傳輸也許更好。實時流式傳輸需要特定服務(wù)器,如:QuickTime Streaming ServerRealServerWindows Media Server。這些服務(wù)器允許你對媒體發(fā)送進行更多級別的控制,因而系統(tǒng)設(shè)置、管理比標(biāo)準(zhǔn)HTTP服務(wù)器更復(fù)雜。實時流式傳輸還需要特殊網(wǎng)絡(luò)協(xié)議,如:RTSP (Realtime Streaming Protocol)MMS (Microsoft Media Server)。這些協(xié)議在有防火墻時有時會出現(xiàn)問題,導(dǎo)致用戶不能看到一些地點的實時內(nèi)容。

  二、流媒體所涉及的軟硬件產(chǎn)品

  1、編碼器:它由一臺普通計算機、一塊microvision 高清視頻采集卡和流媒體編碼軟件組成。Microvision流媒體采集卡負責(zé)將音視頻信息源輸入計算機,供編碼軟件處理;編碼軟件負責(zé)將流媒體 采集卡傳送過來的數(shù)字音視頻信號壓縮成流媒體格式。如果做直播,它還負責(zé)實時地將壓縮好的流媒體信號上傳給流媒體服務(wù)器

 

  2、服務(wù)器:由流媒體軟件系統(tǒng)的服務(wù)器部分和一臺硬件服務(wù)器組成。這部分負責(zé)管理、存儲、分發(fā)編碼器傳上來的流媒體節(jié)目。

  3、終端播放器,也叫解碼器: 這部分由流媒體系統(tǒng)的播放軟件和一臺普通PC組成,用它來播放用戶想要收看的流媒體服務(wù)器上的視頻節(jié)目。

  三、 流媒體技術(shù)原理

  流式傳輸?shù)膶崿F(xiàn)需要緩存。因為Internet以包傳輸為基礎(chǔ)進行斷續(xù)的異步傳輸,對一個實時A/V源或存儲的A/V文件,在傳輸中它們要被分解為許多包,由于網(wǎng)絡(luò)是動態(tài)變化的,各個包選擇的路由可能不盡相同,故到達客戶端的時間延遲也就不等,甚至先發(fā)的數(shù)據(jù)包還有可能后到。為此,使用緩存系統(tǒng)來彌補延遲和抖動的影響,并保證數(shù)據(jù)包的順序正確,從而使媒體數(shù)據(jù)能連續(xù)輸出,而不會因為網(wǎng)絡(luò)暫時擁塞使播放出現(xiàn)停頓。通常高速緩存所需容量并不大,因為高速緩存使用環(huán)形鏈表結(jié)構(gòu)來存儲數(shù)據(jù):通過丟棄已經(jīng)播放的內(nèi)容,流可以重新利用空出的高速緩存空間來緩存后續(xù)尚未播放的內(nèi)容。——流式傳輸?shù)膶崿F(xiàn)需要合適的傳輸協(xié)議。由于TCP需要較多的開銷,故不太適合傳輸實時數(shù)據(jù)。在流式傳輸?shù)膶崿F(xiàn)方案中,一般采用HTTP/TCP來傳輸控制信息而用RTP/UDP來傳輸實時聲音數(shù)據(jù)。流式傳輸?shù)倪^程一般是這樣的:用戶選擇某一流媒體服務(wù)后,Web瀏覽器Web服務(wù)器之間使用HTTP/TCP交換控制信息,以便把需要傳輸?shù)膶崟r數(shù)據(jù)從原始信息中檢索出來;然后客戶機上的Web瀏覽器啟動A/VHelper程序,使用HTTPWeb服務(wù)器檢索相關(guān)參數(shù)對Helper程序初始化。這些參數(shù)可能包括目錄信息、A/V數(shù)據(jù)的編碼類型或與A/V檢索相關(guān)的服務(wù)器地址。

  A/VHelper程序及A/V服務(wù)器運行實時流控制協(xié)議(RTSP),以交換A/V傳輸所需的控制信息。與CD播放機或VCRs所提供的功能相似,RTSP提供了操縱播放、快進、快倒、暫停及錄制等命令的方法。A/V服務(wù)器使用RTP/UDP協(xié)議將A/V數(shù)據(jù)傳輸給A/V客戶程序(一般可認(rèn)為客戶程序等同于Helper程序),一旦A/V數(shù)據(jù)抵達客戶端,A/V客戶程序即可播放輸出。

  需要說明的是,在流式傳輸中,使用RTP/UDPRTSP/TCP兩種不同的通信協(xié)議與A/V服務(wù)器建立聯(lián)系,是為了能夠把服務(wù)器的輸出重定向到一個不同于運行A/VHelper程序所在客戶機的目的地址。實現(xiàn)流式傳輸一般都需要專用服務(wù)器和播放器,其基本原理如圖所示。

  四、智能流技術(shù)(SureStream

  今天,28.8Kbps調(diào)制解調(diào)器是Internet連接的基本速率,cable modem ADSLDSSISDN等發(fā)展快,內(nèi)容提供商不得不要么限制發(fā)布媒體質(zhì)量,要么限制連接人數(shù)。根據(jù)RealNetwork站點統(tǒng)計,對28.8Kbps調(diào)制解調(diào)器,實際流量為10bps26Kbps,呈鐘形分布,高峰在20Kbps。這意味著若內(nèi)容提供商選擇20Kbps固定速率,將有大量用戶得不到好質(zhì)量信號,并可能停止媒體流而引起客戶端再次緩沖,直到接收足夠數(shù)據(jù)。一種解決方法是服務(wù)器減少發(fā)送給客戶端的數(shù)據(jù)而阻止再緩沖,在RealSystem 5.0中,這種方法稱為視頻流瘦化。這種方法的限制是RealVideo文件為一種數(shù)據(jù)速率設(shè)計,結(jié)果可通過抽取內(nèi)部幀擴展到更低速率,導(dǎo)致質(zhì)量較低。離原始數(shù)據(jù)速率越遠,質(zhì)量越差。另一種解決方法是根據(jù)不同連接速率創(chuàng)建多個文件,根據(jù)用戶連接,服務(wù)器發(fā)送相應(yīng)文件,這種方法帶來制作和管理上的困難,而且,用戶連接是動態(tài)變化的,服務(wù)器也無法實時協(xié)調(diào)。智能流技術(shù)通過兩種途徑克服帶寬協(xié)調(diào)和流瘦化。首先,確立一個編碼框架,允許不同速率的多個流同時編碼,合并到同一個文件中;第二,采用一種復(fù)雜客戶/服務(wù)器機制探測帶寬變化。

  針對軟件、設(shè)備和數(shù)據(jù)傳輸速度上的差別,用戶以不同帶寬瀏覽音視頻內(nèi)容。為滿足客戶要求,Progressive networks公司編碼、記錄不同速率下媒體數(shù)據(jù),并保存在單一文件中,此文件稱為智能流文件,即創(chuàng)建可擴展流式文件。當(dāng)客戶端發(fā)出請求,它將其帶寬容量傳給服務(wù)器,媒體服務(wù)器根據(jù)客戶帶寬將智能流文件相應(yīng)部分傳送給用戶。以此方式,用戶可看到最可能的優(yōu)質(zhì)傳輸,制作人員只需要壓縮一次,管理員也只需要維護單一文件,而媒體服務(wù)器根據(jù)所得帶寬自動切換。智能流通過描述I現(xiàn)實世界Internet上變化的帶寬特點來發(fā)送高質(zhì)量媒體并保證可靠性,并對混合連接環(huán)境的內(nèi)容授權(quán)提供了解決方法。流媒體實現(xiàn)方式如下: * 對所有連接速率環(huán)境創(chuàng)建一個文件 * 在混合環(huán)境下以不同速率傳送媒體 * 根據(jù)網(wǎng)絡(luò)變化,無縫切換到其它速率 * 關(guān)鍵幀優(yōu)先,音頻比部分幀數(shù)據(jù)重要 * 向后兼容老版本RealPlayer

  智能流在RealSystem G2中是對所謂自適應(yīng)流管理(ASM)API的實現(xiàn),ASM描述流式數(shù)據(jù)的類型,輔助智能決策,確定發(fā)送那種類型數(shù)據(jù)包。文件格式和廣播插件定義了ASM規(guī)則。用最簡單的形式分配預(yù)定義屬性和平均帶寬給數(shù)據(jù)包組。對高級形式,ASM規(guī)則允許插件根據(jù)網(wǎng)絡(luò)條件變化改變數(shù)據(jù)包發(fā)送。每個ASM規(guī)則可有一定義條件的演示式,如演示式定義客戶帶寬是5,00015,000Kbps,包損失小于2.5%。如此條件描述了客戶當(dāng)前網(wǎng)絡(luò)連接,客戶就訂閱此規(guī)則。定義在規(guī)則中的屬性有助于RealServer有效傳送數(shù)據(jù)包,如網(wǎng)絡(luò)條件變化,客戶就訂閱一個不同規(guī)則。

  

流媒體播放方式

  1.單播

  客戶端媒體服務(wù)器之間需要建立一個單獨的數(shù)據(jù)通道,從一臺服務(wù)器送出的每個數(shù)據(jù)包只能傳送給一個客戶機,這種傳送方式稱為單播。每個用戶必須分別對媒體服務(wù)器發(fā)送單獨的查詢,而媒體服務(wù)器必須向每個用戶發(fā)送所申請的數(shù)據(jù)包拷貝。這種巨大冗余首先造成服務(wù)器沉重的負擔(dān),響應(yīng)需要很長時間,甚至停止播放;管理人員也被迫購買硬件和帶寬來保證一定的服務(wù)質(zhì)量。

  2.組播

  IP組播技術(shù)構(gòu)建一種具有組播能力的網(wǎng)絡(luò),允許路由器一次將數(shù)據(jù)包復(fù)制到多個通道上。采用組播方式,單臺服務(wù)器能夠?qū)资f臺客戶機同時發(fā)送連續(xù)數(shù)據(jù)流而無延時。媒體服務(wù)器只需要發(fā)送一個信息包,而不是多個;所有發(fā)出請求的客戶端共享同一信息包。信息可以發(fā)送到任意地址的客戶機,減少網(wǎng)絡(luò)上傳輸?shù)男畔目偭俊>W(wǎng)絡(luò)利用效率大大提高,成本大為下降。

  3.點播與廣播

  點播連接是客戶端與服務(wù)器之間的主動的連接。在點播連接中,用戶通過選擇內(nèi)容項目來初始化客戶端連接。用戶可以開始、停止、后退、快進或暫停流。點播連接提供了對流的最大控制,但這種方式由于每個客戶端各自連接服務(wù)器,卻會迅速用完網(wǎng)絡(luò)帶寬。

  廣播指的是用戶被動接收流。在廣播過程中,客戶端接收流,但不能控制流。例如,用戶不能暫停、快進或后退該流。廣播方式中數(shù)據(jù)包的單獨一個拷貝將發(fā)送給網(wǎng)絡(luò)上的所有用戶。使用單播發(fā)送時,需要將數(shù)據(jù)包復(fù)制多個拷貝,以多個點對點的方式分別發(fā)送到需要它的那些用戶,而使用廣播方式發(fā)送,數(shù)據(jù)包的單獨一個拷貝將發(fā)送給網(wǎng)絡(luò)上的所有用戶,而不管用戶是否需要,上述兩種傳輸方式會非常浪費網(wǎng)絡(luò)帶寬。組播吸收了上述兩種發(fā)送方式的長處,克服了上述兩種發(fā)送方式的弱點,將數(shù)據(jù)包的單獨一個拷貝發(fā)送給需要的那些客戶。組播不會復(fù)制數(shù)據(jù)包的多個拷貝傳輸?shù)骄W(wǎng)絡(luò)上,也不會將數(shù)據(jù)包發(fā)送給不需要它的那些客戶,保證了網(wǎng)絡(luò)上多媒體應(yīng)用占用網(wǎng)絡(luò)的最小帶寬。

流媒體技術(shù)應(yīng)用

  互聯(lián)網(wǎng)的迅猛發(fā)展和普及為流媒體業(yè)務(wù)發(fā)展提供了強大的市場動力,流媒體業(yè)務(wù)正變得日益流行。流媒體技術(shù)廣泛用于多媒體新聞發(fā)布、在線直播、網(wǎng)絡(luò)廣告電子商務(wù)視頻點播遠程教育遠程醫(yī)療網(wǎng)絡(luò)電臺、 實時視頻會議等互聯(lián)網(wǎng)信息服務(wù)的方方面面。流媒體技術(shù)的應(yīng)用將為網(wǎng)絡(luò)信息交流帶來革命性的變化,對人們的工作和生活將產(chǎn)生深遠的影響。

  一個完整的流媒體解決方案應(yīng)是相關(guān)軟硬件的完美集成,它大致包括下面幾個方面的內(nèi)容: 內(nèi)容采集、 視音頻捕獲和壓縮編碼、內(nèi)容編輯、內(nèi)容存儲和播放、應(yīng)用服務(wù)器內(nèi)容管理發(fā)布及用戶管理等。