流媒體傳輸技術

本文主要介紹流媒體傳輸技術,包括傳輸過程、快取系統和傳輸協定。

概述,傳輸過程,快取系統,傳輸協定,

概述

在網路上傳輸音視頻等多媒體信息主要有下載和流式傳輸兩種方案。
下載方式,一般是使用下載工具選擇需下載的檔案後啟動下載過程,根據檔案大小,這個過程常常需要幾分鐘甚至幾小時,用戶只有等待整個檔案下載完成後,才能開始音視頻多媒體檔案的播放。而採用流式傳輸方式,用戶不必像採用下載方式那樣需要等到整個檔案全部下載完畢再觀看出,而只需經過幾秒或幾十秒的啟動延時就可以在用戶的計算機上進行播放和觀看。

傳輸過程

那這是如何做到的呢?為了搞清楚這個,我們首先來看看流式傳輸的一般過程:
  1. 用戶選擇某一流媒體服務後,Web瀏覽器與Web伺服器之間使用HTTP/TCP交換控制信息,以便把需要傳輸的實時數據從原始信息中檢索出來。
  2. Web瀏覽器啟動音視頻客戶程式,使用HTTP協定從Web伺服器檢索相關參數對音視頻客戶程式初始化,這些參數可能包括目錄信息、音視頻數據的編碼類型或與音視頻檢索相關的伺服器地址。
  3. 音視頻客戶程式及流媒體伺服器運行實時流協定,以交換音視頻傳輸所需的控制信息,實時流協定提供執行播放、快進、快倒、暫停及錄製等命令的方法。
  4. 流媒體伺服器使用RTP/UDP協定將音視頻數據傳輸給音視頻客戶程式,一旦音視頻數據抵達客戶端,音視頻客戶程式即可播放輸出。後續傳給客戶端的音視頻數據會被客戶端快取起來,待播放後再從快取中刪除。
從上面的過程可以看出,實現這種流式傳輸,除了需要專用的伺服器和播放器外,還需要兩個關鍵條件:一是快取,二是合適的傳輸協定。

快取系統

使用快取系統能消除時延和抖動的影響,以保證數據包順序正確,從而使媒體數據能夠連續輸出。因為一個實時音視頻源或存儲的音視頻檔案在傳輸過程中將被分解為許多數據包,而網路又是動態變化的,各個數據包選擇的路由可能不相同,故到達客戶端的時延也就不同,甚至先發的數據包有可能後到,使用快取系統後這些數據包都將先入到快取中然後再根據數據包順序正確編排,從而使媒體數據能夠按照正確的順序輸出。通常高速快取所需容量並不大,因為通過丟棄已經播放過的內容可以重新利用空閒出來的空間來快取後續尚未播放的內容。

傳輸協定

流式傳輸的實現需要合適的傳輸協定,你可能很自然想到TCP協定,但是由於TCP需要較多的開銷,所以不太適合傳輸實時數據。在流式傳輸的實現方案中,一般採用的傳輸協定有實時傳輸協定RTP、實時傳輸控制協定RTCP、資源預留協定RSVP、實時流協定RTSP以及多用途網際網路郵件擴充協定MIME。通過這些不同的通信協定與音視頻伺服器建立聯繫,就可以將伺服器上的音視頻輸送到客戶機上,可以實現遠程的媒體檔案播放。下面來看一下這幾個常用協定。
  1. 實時傳輸協定RTP(Real-time Transport Protocol)主要是用於網際網路上針對流媒體數據流的一種傳輸協定。其目的是提供時間信息和實現流同步。RTP 通常使用UDP 來傳送數據。RTP 本身並不能為按順序傳送數據包,不能提供可靠的傳送機制,也不能提供流量控制或擁塞控制,它依靠RTCP 提供這些服務。
  2. 實時傳輸控制協定RTCP(Real-time Transport Control Protocol)為RTP提供流量控制和擁塞控制服務,是RTP的控制協定。它周期性地與所有會話的參與者進行通信,並採用和傳送數據包相同的機制來傳送控制包。RTCP包中含有已傳送的數據包數量和丟失的數據包數量等統計資料,因此伺服器可以利用這些信息動態地改變傳輸速率,甚至改變有效載荷類型。RTP 和RTCP 配合使用,它們能以有效的反饋和最小的開銷使傳輸效率最佳化,因而特別適合網上的流媒體傳輸。
  3. 資源預留協定RSVP(Resource Reservation Protocol)是網路中預留所需資源的傳送通道建立和控制的信令協定,它能根據業務數據的QoS要求和頻寬資源管理策略進行頻寬資源分配,在IP網上提供一條完整的路徑。RSVP協定是通過預留網路資源建立從傳送端到接收端的路徑,使得IP網路能提供接近於電路交換質量的業務。但是RSVP沒有提供多媒體數據的傳輸能力,它必須配合其它實時傳輸協定來完成多媒體通信服務。
  4. 實時流協定(RTSP)就是用於控制具有實時特徵數據傳輸的套用層協定。RTSP可建立和控制一個或多個音頻和視頻連續媒體的時間同步流。雖然它可能會將控制流插入連續媒體流,但它本身並不傳送連續媒體流。RTSP用於通過網路對媒體伺服器進行遠程控制。RTSP伺服器維護會話的狀態信息,從而通過RTSP的狀態參數可對連續媒體流的回放進行控制(如暫停等)。
  5. 多用途網際網路郵件擴充協定(MIME)是SMTP協定的擴展,不僅用於電子郵件,還能用來標記在網際網路上傳輸的任何檔案類型。瀏覽器也是通過MIME來識別流媒體的類型,並調用相應的程式或外掛程式來處理。IE等常用的瀏覽器都提供了很多的流媒體支持。

相關詞條

熱門詞條

聯絡我們