天天看點

流媒體技術原理與應用

流媒體技術原理與應用
 
 

南京郵電學院紀其進等

  摘要:流媒體是網絡環境中的一種新的媒體形式,有着廣闊的應用前景。本文初步探讨了流媒體技術的原理及實作流媒體技術的協定,介紹了流媒體技術目前和未來可能的一些應用。

  1 引言

   當今,我們正處在資訊時代,不但面對巨大的資訊量,資訊的表現形式也越來越豐富。越來越多的公司和個人正在利用音頻、視訊等多媒體技術釋出和傳播資訊。一些多媒體應用系統(如視訊會議、遠端教學等)也不斷出現。随着PC等智能終端的日益普及,使用者有能力而且希望通過便利的方法獲得這些資訊。

   網絡已經并将繼續改變我們的生活方式。多媒體應用的環境正由桌面平台(如多媒體PC)向網絡多媒平台和簡單智能終端相結合的方向演進,網絡将成為無可比拟的超級伺服器。想要使用網絡中的多媒體資訊,就必須實作通過網絡通路和傳輸這些資訊。流媒體技術正是在這種情況下應運而生。

  本文初步探讨了流媒體技術的原理及實作流媒體技術的相關協定,介紹了流媒體技術目前和未來可能的一些應用。

  2 什麼是流媒體

  音/視訊(A/V)等多媒體資訊是在時間上展開的資料流,具有資料量大和實時等特點。要在多媒體終端(如PC)上再現或回放多媒體資訊,很重要的一點就是要獲得平滑的多媒體資料流。當多媒體資料儲存在終端的DSM(數字存儲媒質,如計算機硬碟或VCD)中時,通過資料總線在DSM和記憶體之間進行傳輸不難實作。是以使用者可以通過下載下傳方式将網絡中伺服器的資料儲存至本地硬碟。但采用下載下傳方式,使用者必須考慮兩個因素:對用戶端的存儲需求和播放啟動延時。因為A/V檔案一般都較大,是以需要的存儲容量也較大;同時由于網絡帶寬的限制,下載下傳常常要花數分鐘甚至數小時。

  可以想象,如果能夠直接從網絡上得到平滑的資料流,則無須首先把多媒體資料下載下傳到本地終端。流媒本技術正是試圖解決這個問題。通常,将直接從網絡上獲得的平滑資料流的傳輸方式稱為流式傳輸(盡管這個概念很模糊,本文沿用這一說法)。所謂流式傳輸就把聲音、影像或動畫等資訊由網絡中音視訊伺服器向使用者終端(如PC、PDA等)連續、實時傳送。在采用流式傳輸的系統中,使用者不必象采用下載下傳方式那樣等到整個檔案全部下載下傳完畢,而隻需經過幾秒或十數秒的啟動延時(緩沖)即可在使用者的計算機上利用解壓裝置(硬體或軟體)對壓縮的多媒體資料解壓後進行回放。當音頻、視訊等媒體資料在客戶終端上播放時,資料的剩餘部分将在背景從伺服器繼續下載下傳。這種對多媒體資料邊下載下傳邊回放的方式不僅使啟動延時成十倍、百倍地縮短,而且不需要本地終端有太大的存儲容量。

  綜上所述,作者認為流媒體指的是通過網絡傳輸的、能夠在本地終端實時回放的、具有實時特征的媒體内容編碼資料流。因為Internet/Intranet上已經有很多重要的應用,流媒體的傳輸網絡主要是以Internet為代表的IP網。随着ATM的不斷成熟,考慮到ATM固有的優秀品質,可以想象ATM網将在這一領域發揮重要作用。另外,靜止的文本和圖像已經不再能滿足使用者不斷提高的要求,動态的音頻和視訊必将成為未來網絡應用重要資訊載體,是以流媒體主要用于傳送音頻和視訊信号碼流。

  3 流媒體技術原理

  如前所述,所謂流媒體是指在Internet等網絡中采用流式傳輸方式得到的連續時基媒體資料,顯然,流媒體實作的關鍵技術就是流式傳輸,即通過網絡獲得平滑的資料流。為了實作流式傳輸,需要采取一些技術手段。

  3.1 流媒體技術的關鍵

  由于目前的存儲容量和網絡帶寬還不能完全滿足巨大的A/V,3D等多媒體資料流量的要求,是以對A/V,3D等多媒體資料一般要進行預處理後才能進行存儲或傳輸。預處理主要包括采用先進高效的壓縮算法和降低品質(有損壓縮)兩個方面。同樣,在流媒體技術中,進行流式傳輸的多媒體資料應首先經過特殊的壓縮,然後分成一個個壓縮資料包,由伺服器向使用者計算機連續、實時傳送。

  另外,與下載下傳方式相比,盡管流式傳輸對于系統存儲容量的要求大大降低,但它的實作仍需要緩存。這是因為Internet是以分組傳輸為基礎進行統計時分複用,資料在傳輸過程中要被分解為許多分組,在網絡内部采用無連接配接方式傳送。由于網絡是動态變化的,各個分組選擇的路由可能不盡相同,故到達使用者計算機的路徑和時間延遲也就不同。是以,必須使用緩存機制來彌補延遲和時延抖動的影響,使媒體資料能連續輸出,不會因網絡暫時擁塞而使回放出現停頓。高速緩存使用環形連結清單結構來存儲資料,通過丢棄已經播放的内容,可以重新利用空出的高速緩存空間來緩存後續的媒體内容。

  如果在終端之間用無連接配接方式(如UDP/IP)通信,還必須保證資料包傳輸順序的正确。在網絡品質有一定保證的前提下,緩存機制是實作流媒體技術的重要問題。

  3.2 支援流媒體傳輸的網絡協定

  流媒體采用流式傳輸方式在網絡伺服器與用戶端之間進行傳輸。流式傳輸的實作需要合适的傳輸協定。IETF(Internet Engineering Task Force,網際網路工程任務組)制訂的很多協定可用于實作流媒體技術。其它的标準化組織也在這方面做了很大的努力,如MPEG-4的多媒體遞送內建架構(DMIF,〖6〗)。本文主要介紹IETF的工作。

  3.2.1 RTP/RTCP

  RTP(Real-time Transport Protocol)國互動式音頻、視訊等具有實時特征的資料提供端到端的傳送服務。如果底層網絡支援多點傳播,RTP還可使用多點傳播向多個目的端點發送資料。RTP協定包含兩個密切相關的部分,即負責傳送具有實時特征的多媒體資料的RTP和負責回報控制、監測QoS和傳遞相關資訊的RTCP(Real-time Transport Control Protocol)。在RTP資料包的頭部中包含了一些重要的字段使接收端能夠對收到的資料包恢複發送時的定時關系和進行正确的排序以及統計包丢失率等。RTCP是RTP的控制協定,它周期性地與所有會話的參與者進行通信,并采用和傳送資料包相同的機制來發送控制包。

  值得注意的是,RTP協定本身并不提供任何QoS必須由下層網絡來保證。但是通過RTCP控制包可以為應用程式動态提供網絡的目前資訊,據此可對RTP的資料收發作相應調整使之最大限度地利用網絡資源。

  3.2.2 RSVP

  IETF的資源預留協定RSVP(Resource Reservation Protocol)是網絡中預留所需資源的傳送通道建立和控制的信令協定,它能根據業務資料的QoS要求和帶寬資源管理政策進行帶寬資源配置設定,在IP網上提供一條完整的路徑。通過預留網絡資源建立從發送端到接收端的路徑,使得IP網絡能提供接近于電路交換品質的業務。即在面向無連接配接的網絡上,增加了面向連接配接的我;它既利用了面向無連接配接網絡的多種業務承載能力,又提供了接近面向連接配接網絡的品質保證。但是RSVP沒有提供多媒體資料的傳輸能力,它必須配合其它實時傳輸協定來完成多媒體通信服務。

  3.2.3 RTSP

  實時流協定(RTSP)是用于控制具有實時特征資料傳輸的應用層協定。它提供了一個可擴充的架構以控制、按需傳送實時資料,如音頻、視訊等,資料源既可以是實況資料産生裝置,也可以是預先儲存的媒體檔案。該協定緻力于控制多個資料傳送會話,提供了一種在UDP、多點傳播UDP和TCP等傳輸通道之間進行選擇的方法,也為選擇基于RTP的傳輸機制提供了方法。

  RTSP可建立和控制一個或多個音頻和視訊連續媒體的時間同步流。雖然在可能的情況下,它會将控制流插入連續媒體流,但它本身并不發送連續媒體流。是以,RTSP用于通過網絡對媒體伺服器進行遠端控制。盡管RTSP和HTTP有很多類似之處,但不同于HTTP,RTSP伺服器維護會話的狀态資訊,進而通過RTSP的狀态參數可對連續媒體流的回放進行控制(如暫停等)。

  3.2.4 MIME

  通用網際網路郵件擴充MIME(Multipurpose Internet Mail Extensions)是SMTP的擴充,不僅用于電子郵件,不能用來标記在Internet上傳輸的任何檔案類型。通過它,Web伺服器和Web浏覽器才可以識别流媒體并進行相應的處理。Web伺服器和Web浏覽器都是基于HTTP協定,而HTTP内建有MIME。HTTP正是通過MIME标記Web上繁多的多媒體檔案格式。為了能處理一種特定檔案格式,需對Web伺服器和Web浏覽器都進行MIME類型設定。對于标準的MIME類型,如文本和JPEG圖像,Web伺服器浏覽器提供内建支援;但對Real等非标準的流媒體檔案格式,則需設定audio/x-pn-real audio等MIME類型。浏覽器通過MIME來識别流媒體的類型,并調用相應的程式或Plug-in(插件)來處理。在IE和Netscape這兩個最常用的浏覽器中,都提供了很多的内建流媒體支援。

4 流媒體技術的開發

  在1999年年底結束的streaming Media West’99展覽會中,Microsoft,RealNetworks,Apple,Intel等公司就流媒體技術的發展、應用展開了激烈的競争。同時,與會的專家預計未來3年内,更多的Internet使用者(包括企業和個人使用者)将通過流媒體技術釋出和擷取資訊。在市場的推動下,業界對流媒體技術的開發投入了很大的力量,流毀滅體技術的應用範圍也越來越廣。

  4.1 流式視訊格式

  一般而言,媒體内容是一定的格式儲存的。媒體播放器要能夠識别媒體檔案格式,并從中得到回放時需要的資訊。到目前為止,Internet上使用較多的流式視訊格式主要是以下三種:RealNetworks公司的RealMekia,Apple計算機公司的QuickTime以及Microsoft公司的Advanced Streaming Format(ASF)。

  4.1.1 RealMedia

   RealNetworks公司所制定的音頻視訊壓縮規範稱為RealMedia,是目前在Internet上相當流行的跨平台的客戶/伺服器結構的多媒體應用标準。它采用音頻/視訊流同步回放技術來實作在Internet上全帶寬地提供最優質的多媒體資訊,同時也能夠在Internet上以28.8kbps的傳輸速率提供立體聲和連續視訊。

   RealNetworks公司自1995年釋出RealAudio 1.0以來,RealAudio和RealVideo産品已經成為Internet網上最受歡迎的解決方案。其中所采用的SureStream(自适應流)技術是RealNetworks公司具有代表性的技術。它通過RealServer将A/V檔案以流的方式傳輸,然後利用SureStream方式,根據用戶端不同的撥号速率(不同的帶寬),讓傳輸的A/V資訊自動适應帶寬,并始終以流暢的方式播放。其同步推出的RealPlayer是目前最流行的流媒體播放器。

  4.1.2 QuickTime

  Apple計算機公司的QuickTime是數字媒體領域事實上的工業标準,可以通過Internet提供實時的數字化資訊流、工作流與文化回放功能。它由三個不同部分所組成:QuickTime電影(Moive)檔案格式、QuickTime媒體抽象層以及QuickTime内置媒體服務系統。QuickTime電影檔案格式定義了存儲數字媒體内容的标準方法,使用這種檔案格式不僅可以存儲單個的媒體内容(如視訊幀或音頻采樣),而且能儲存對該媒體作品的完整描述(中繼資料)。QuickTime媒體抽象層是一種綜合性的媒體軟體架構,它定義了軟體工具和應用程式如何通路QuickTime内置媒體服務系統,以及如何通過硬體提升QuickTime的關鍵性能。而QuickTime内置媒體服務系統則可作為軟體開發工具的基礎,幫助軟體開發商和使用者充分利用QuickTime的技術優勢。

  4.1.3 ASF

  Microsoft公司推出的ASF(Advanced Streaming Format,進階流格式),是一種獨立于編碼方式的資料格式,音頻、視訊、圖像以及控制指令腳本等多媒體資訊可以通過這種格式,以網絡資料包的形式傳輸。其中,在網絡上傳輸的内容就稱為ASF Stream。ASF支援任意的壓縮/解壓縮編碼方式,并可以使用任何一種底層網絡傳輸協定,具有很大的靈活性。Microsoft公司希望用ASF取代QuickTime之類的技術标準以及WAV,AVI等檔案類型,并打算将ASF用作将來的Windows版本中所有多媒體内容的标準檔案格式。

   ASF的主要優點包括:本地或網絡回放、可擴充的媒體類型、部件下載下傳、可伸縮的媒體類型、流的優先級化、多語言支援、環境獨立性、豐富的流間關系以及擴充性等。但ASF的最大優勢可能在于Microsoft在業界的影響力及由此得到的衆多廠商的支援。

  4.2 流媒體技術的實作過程

   按照内容送出的方式,流媒體可以分為兩種:實況流媒體廣播(即Web廣播)和由使用者按需通路的存檔的視訊和音頻。不論是哪一種類型的流媒體,其實作從攝制原始鏡頭到媒體内容的回放都要經過一定的過程。下文以RealMedia為例來說明流媒體的制作、傳輸和使用的過程:

   *采用視訊捕獲裝置對事件進行錄制;

   *對擷取的内容進行編輯,然後利用視訊編輯硬體和軟體對它進行數字化處理;

   *經數字化的視訊和音頻内容被編碼為流媒體(.rm)格式。

   *媒體檔案或實況資料流被儲存在安裝了流媒體伺服器軟體的宿主計算機上;

   *使用者點選網頁請求視訊流或通路流内容的資料庫;

   *宿主伺服器通過網絡向最終使用者送出數字化内容;

   *最終使用者利用桌面或移動終端上的顯示媒體内容的播放程式(如Realplayer)進行回放和觀看。

  5 流媒體技術的應用

  Internet的不斷發展決定了流媒體應用廣闊的市場前景。流媒體技術及其相關産品将廣泛用于遠端教育、網絡電台、視訊點播、收費播放等。流媒體技術在企業一級的可能應用包括電子商務、遠端教育訓練、視訊會議、客戶支援等。下面簡介一些主要的流媒體應用。

   *視訊播出(Streaming Video):娛樂是流媒體的重要應用場合。用錄影機或其它裝置獲得視訊信号後,就可以通過 站點進行基于Internet的現場直播;或者儲存為流媒體格式的檔案,以供按需播放。需要在一台較高配置的PC機或伺服器上安裝上普通視訊采集卡和聲霸卡,然後通過視訊采集卡輸入視訊和通過聲霸卡輸入聲音信号就可以用實時編碼工具來進行直播或錄制成流媒體檔案。在這種應用中可加入一定的計費手段,進而能夠提供有償多媒體内容服務。

   *遠端教學(Remote seminar):遠端教學将為更多的人提供接受教育的機會。教學者事先在Internet/Intranet上發出通知,聽衆在講座開始前通路某個URL位址,當講座開始時,聽衆可以看到演講者的演講畫面并聽到他的聲音。整個講座也可以媒體檔案的形式記錄下來,用于以後按需播放。教學者事先把媒體檔案傳給遠端教學伺服器,當聽衆需要聽講座時,同樣通路相應的URL位址,請求擷取伺服器中的媒體内容。媒體資料通過流式傳輸下載下傳到使用者的浏覽器高速緩存中,由媒體播放器實時回放。

   *視訊會議(Video Conference):視訊會議和遠端教學有很多類似之處,但它對實時性的要求更高。在一個視訊會議中,各個會議點用音/視訊采集裝置得到多媒體内容資訊,經過數字化後用某種壓縮方法進行壓縮。壓縮資料可以通過網絡直接在各個會議點之間多點傳播,或傳到多點處理器(MP)經過合成或轉換後再向各與會點多點傳播。但不管采用哪種方式,都需要保證以盡量小的時延在各個點進行回放,這正是流媒體技術發揮作用的地方。雖然,視訊會議的音/視訊可以儲存在DSM中,但這樣做沒有太大的意義。

  6 結束語:流媒體的未來

   流媒體服務系統和傳統的網絡檔案服務系統有許多相似之處,尤其強調對資料對象的共享使用和追求最大化的資料吞吐率,但是,流媒體技術更為強調對高速、穩定和邊疆的尋體流的通路支援,以及對不同媒體同步(如音視碼流的唇同步)的支援,進而確定媒體資料的以最小的時延到達并在本地終端同步回放。

   由于目前的流媒體服務系統存在着對連續性、實時性的嚴格要求以及對資料巨量需要,現階段的網絡尚有些免為其難。随着計算機網絡的進一步發展,網絡帶寬的不斷擴大,網絡多媒體平台将不斷完善,流媒體技術必将會在未來的網絡應用中發揮更大的作用。正如當初圖像處理要求對計算機的影響一樣,可以預見,流媒體服務系統也将對網絡和終端的硬體和軟體設計産生重大影響。