流媒體技術原理

來源:互聯網
上載者:User

原文來自: http://www.cnblogs.com/robertfang/articles/1222598.html

 

1、概述

  流媒體技術是一種專門用於網路多媒體資訊傳播和處理的新技術,該技術能夠在網路上實現傳播和播放同時進行的即時工作模式,相對於其他的一些音、視頻網路傳輸和處理技術,流媒體比較成熟和使用,目前已經成為網上音、視頻(特別是即時音視頻)傳輸的主要解決方案。

  流媒體與常規視頻媒體之間的不同在於,流媒體可以邊下載邊播放。“流”的重要作用體現在可以明顯的節省時間,由於常規視頻媒體檔案比較大,並且只能下載下來後才能播放,因此下載需要很長的時間,妨礙了資訊的流通,流媒體的應用是近幾年來Internet發展的產物,廣泛應用於遠程教育、網路電台、ApsaraVideo for VOD、收費播放等。

  目前,制約流媒體寬頻應用發展的關鍵在於互連網的服務品質,流媒體從理論上解決了大容量網路多媒體資料轉送的即時性要求問題,但是由於大型封包交換網路中資料轉送受到諸多因素的影響,網路的狀況是不可靠的,其頻寬、負荷等的變化難以滿足流媒體寬頻業務的即時性服務需求品質。並且常常造成播放卡殼、延遲、視頻抖動劇烈,給使用者感官造成很大影響,所以解決好流媒體網路應用的服務品質問題對於流媒體寬頻應用是極為重要的。

2、流媒體技術原理

  流媒體的傳輸的實現需要緩衝。因為Internet以分組傳輸為基礎進行斷續的非同步傳輸,對一個即時的A/V源或儲存的A/V檔案。在傳輸中它們要被分解為許多的分組,由於網路是動態變化的,各個分組選擇的路由可能不盡相同,故到達用戶端的時間延遲也就不等,甚至先發的資料分組有可能後到。為此,使用緩衝系統來彌補延遲和抖動的影響,並保證分組的順序正確,從而使媒體資料能連續輸出,而不會因為網路暫時擁塞使播放出現停頓。

  流媒體傳輸的實現需要合適的傳輸協議。由於TCP需要較多的開銷,因此不太適合傳輸即時資料。在流媒體傳輸的實現方案中,一般採用HTTP/TCP來傳輸控制資訊,而用RTP/UDP來傳輸即時聲音資料。

圖1 流媒體傳輸基本原理圖

  流媒體傳輸的過程1所示。一般描述如下:使用者選擇某一流媒體服務後,Web瀏覽器與Web伺服器之間使用HTTP/TCP交換控制資訊,以便把需要傳輸的即時資料從原始資訊中檢索出來,然後客戶機上的Web瀏覽器啟動A/V Helper程式,使用HTTP從Web伺服器檢索相關參數對Helper程式初始化。這些參數可能包括目錄資訊、A/V資料的編碼類別型或與A/V檢索相關的伺服器位址。

  A/V Helper程式及A/V伺服器運行即時資料流通訊協定(RTSP,Real-Time Streaming Protocol),以交換A/V傳輸所需的控制資訊。與CD播放機或VCRs所提供的功能相似,RTSP提供了操縱播放、快進、快倒、暫停及錄製等命令的方法。A/V伺服器使用RTP/UDP協議將A/V資料轉送給A/V客戶程式(一般可以認為客戶程式等同於Helper程式),一旦A/V資料抵達用戶端,A/V客戶程式即可播放輸出。

  需要說明的是,在流媒體傳輸中。使用RTP/UDP和RTSP/TCP兩種不同的通訊協定與A/V伺服器建立聯絡,是為了能夠把伺服器的輸出重新導向到一個不同於運行A/V Helper程式所在客戶機的目的地址。實現流媒體傳輸一般都需要專用伺服器和播放器。

3、流媒體傳輸模式

  流媒體之所以能夠實現多媒體資料的即時播放是採用了專門的網路控制協議和資料轉送機制。伺服器端有專門的流媒體發布系統,而用戶端則有專門的播放器,這兩部分都需要通過資料緩衝區進行資料的緩衝。

  與普通的封包交換網路不同,流媒體系統的緩衝區中的資料在資料轉送過程中是動態,也可成為是交換狀態的,資料以堆棧方式進出緩衝區,而不需要等待資料全部達到客戶機後才從緩衝區中被釋放出來,由於資料緩衝區中的資料是“流動”的,再加上資料的播放需要維持一個穩定的資料輸出速度,隨時都要求緩衝區有相應的資料提供給播放器,如果沒有相應的資料,則會出現內容播放過程中的暫停和畫面的條約,出現前一種情況一般是由於網路傳輸速度跟不上資料的播放速度,而發生了資料的下溢,而後一種情況的發生是由於網路傳輸速度過快,超過了播放的速度,而又沒有適當的傳輸控制而造成的資料上溢。

4、網路傳輸與控制協議

  多媒體業務流由於其資料量大、即時等特點,對網路傳輸也提出相應的要求,主要表現在高頻寬、低傳輸時延、同步和高可靠性幾方面。為了保證好的QoS,必須考慮傳輸模式、協議棧和應用體系控制等問題。以下主要討論應用於流媒體即時控制和傳輸的幾種協議。

  4.1 RTP/RTCP協議簇

RTP/RTCP是端對端基於組播的應用程式層協議。其中RTP(Realtime Transfer Protocol)用於資料轉送,RTCP(Realtime Transfer Control Protocol)用於統計、管理和控制RTP傳輸,兩者協同工作,能夠顯著提高網路即時資料的傳輸效率。

  RTP和 RTCP都定義在RFC1889中。RTP用於在單播或多播情況下傳輸即時資料,通常工作在UDP上。RTP協議核心在於其資料包格式,它提供應用於多媒體的多個域,包括VOD,VoIP,電視會議等,並且不規定負載的大小,因此能夠靈活應用於各媒體環境。但RTP協議本身不提供資料包的可靠傳送和擁塞控制,必須依靠RTCP提供這些服務。RTCP的主要功能是為應用程式提供媒體品質資訊。在RTP會話期間,每個參與者周期性地彼此發送RTCP控制包,包中封裝了發送端或接收端的統計資訊。包括髮送包數、丟包數、包抖動等,這樣發送端可以根據這些資訊改變發送速率,接收端則可以判斷包丟失等問題出在哪個網路段。總的來說,RTCP在流媒體傳輸中的作用有:QoS管理與控制、媒體同步和附加資訊傳遞。

  在RTP/RTCP協議基礎上,不同的媒體類型需要不同的封裝和管理技術。目前國際上正在研究基於RTP/RTCP的媒體流化技術,包括MPEG-1/2/4的媒體流化技術。

  4.2 RSVP協議

  資源預留協議RSVP(Resource reSerVation Protocol)是針對IP網路傳輸層不能保證QoS和支援多點傳輸而提出的協議。RSVP在業務流傳送前先預約一定的網路資源,建立靜態或動態傳輸邏輯通路。從而保證每一業務流都有足夠的“獨享”頻寬,因而能夠克服網路的擁塞和丟包,提高QoS效能。

  值得一提的是,RSVP是由接收方執行操作的協議。接收方決定預留資源的優先順序,並對預留資源進行初始化和管理。在網路節點(如路由器)上被要求預留的資源套件括緩衝區和頻寬等,一般資料包通過位於網路節點上的“濾包器”使用預留資源,RSVP共有3種預留類型:無濾包器形式、固定濾包器形式和動態濾包器形式。

  4.3 RTSP協議

  即時資料流通訊協定 (Real-Time Streaming Protocol)由RealNetworks和Netscape共同提出。是工作在RTP之上的應用程式層協議。它的主要目標是為單播和多播提供可靠的播放效能。RTSP的主要思想是提供控制多種應用資料傳送的功能。即提供一種選擇傳送通道的方法,例如UDP、TCP、IP多播,同時提供基於RTP傳送機制的方法。RTSP控制通過單獨協議發送的流,與控制通道無關,例如,RTSP控制可通過TCP串連,而資料流通過UDP。通過建立並控制一個或幾個時間同步的連續流資料,其中可能包括控制流程,RTSP能為伺服器提供遠端控制。另外,由於RTSP在文法和操作上與HTTP類似,RTSP請求可由標準HTTP 或MIME解析器解析,並且RTSP請求可被代理、通道與緩衝處理。與HTTP相比,RTSP是雙向的,即客戶機和伺服器都可以發出RTSP請求。

  實現RTSP的系統必須支援通過TCP傳輸RTSP,並支援UDP。RTSP伺服器的TCP和UDP預設連接埠都是554。目前最新的微軟Media Services V9和RealSystem都支援RTSP協議。

5、媒體價值鏈和運營模式

  寬頻流媒體業務的價值鏈至少需要包括幾個部分:應用供應商、內容開發商、業務支撐系統電訊廠商、網路供應商、使用者。其中,使用者最終獲得寬頻流媒體應用業務,並為之付費。應用供應商是寬頻流媒體業務的直接提供者,直接面對使用者提供業務。內容供應商是流媒體內容資源的擁有者,負責節目的製作,包括流媒體檔案的產生、編碼、壓縮。業務支撐系統電訊廠商提供一個獨立的可運營的管理和傳輸平台,為寬頻流媒體應用提供支撐環境。網路供應商提供基本的承載網路。

  目前,流媒體業務的運營模式還在不斷髮展中,網路電訊廠商、應用供應商、內容供應商都在不斷尋求成熟的運營模式和合作模式。

6、結束語

  流媒體技術包含了從伺服器構架到網路通訊協定等一系列技術,目前這些技術還在不斷髮展和完善中,同時各電訊廠商也正在探索合適的商業模式。儘管如此,流媒體技術轉變了傳統互連網限於文本和圖片的二維呆板的內容表現形式,是寬頻應用的發展方向。同時流媒體能夠廣泛應用於VOD、遠程教學、網路廣告、互動視頻遊戲等,大大拓寬服務涵蓋範圍,因此各電信電訊廠商都看好流媒體業務,並希望能夠以此帶動寬頻產業進入高速發展的時期。可以預見,流媒體業務將成為寬頻網路上的主流資訊業務。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.