串流媒體
串流媒體是指一種透過網路傳送播出的影音媒體形式,與傳統媒體特別不同之處在於其播送方式,傳統的影音媒體由於並非針對透過網路播放這種需求而設計,當透過網路傳送來觀看時,必須在收看前先下載全部的影音內容。這種方式往往因為公共網路頻寬不足的影響,使得下載所需時間甚長,影響一般觀看者的收看意願。[1]相反地,串流媒體是配合透過網路播送收看的需求而設計,這種影音媒體形式可以經由分批傳輸的模式傳送至用戶端,因此,用戶端可以一邊下載一邊收看已經備妥的影音片段,於是,只需等待相對短暫的初始片段下載時間,就可以收看完整的影音內容。
串流媒體 | |
---|---|
串流媒體有兩種應用模式:即時(on live)與非即時(on demand)。即時模式是指某處現場正在發生的景物,透過攝影錄音成為影音內容,即時進行壓縮編碼(encode)處理後,立刻經由伺服器在網路上傳送現場的影音內容至播放器播出,如圖一所示,例如:視訊會議、視訊監控等應用。另一方面,非即時模式則是指預先錄製的影音內容,同樣經過壓縮編碼處理而存放於伺服器端,當用戶端提出收看要求後,才從伺服器內調出檔案,透過網路傳送到用戶端的播放器中播出。
按廣播方式:
‧ 多點廣播(Multicast)-可提供對多人同時播送,降低對網路頻寬的需求,但無法提供隨選視訊
‧ 單點廣播(Unicast)-可以提供隨選視訊,但可連線的用戶數量受限於網路頻寬
串流媒體在網際網路上的傳輸方式主要有兩種,一種是HTTP/TCP,另一種是RTP/UDP。以HTTP(HyperText Transfer Protocol)為基礎的WWW是網際網路上使用最廣的服務之一,利用HTTP 協定可以讓串流媒體得以穿過防火牆的阻隔,且將串流媒體放在WWW上可以讓使用者方便的取得這些內容,然其缺點在於TCP(Transmission Control Protocol) 通訊協定將會導致傳輸速度的減緩,進而增加串流媒體所需要的頻寬,且串流資料必須事先放置於網頁上而無法達到真正即時的效果。另外使用RTP(Real Time Protocol)/UDP (User Data Protocol)的優點在於UDP 可以提供較好的傳輸效率,且可以達到真正即時的效果並提供群播等有效率的傳輸方式,但有防火牆的問題則需要在防火牆兩端加裝translator的設備以便穿過防火牆。
串流技術(傳輸協定)的分類
• 第一類串流技術利用標準的網頁伺服器 (Web server)將多媒體資料送到使用者的播放器播放。
• 第二類串流技術是利用獨立的串流伺服器(streaming server)將多媒體資料送到使用者的播放器上播放。
• 第三類串流技術叫Clientless Streaming,播放器不是內建在用戶端,而是在串流過程中才送到使用者手上。
第一類串流技術是利用標準的網頁伺服器將多媒體資料送到使用者的播放器上播放。因為標準的網頁伺服器是遵守HTTP通訊協定,所以稱為HTTP Streaming,HTTP streaming 是最先在市場上出現及運用的串流方式,使用這種方式的好處是只要使用一般的網頁伺服器,並不需要再另外建置專屬的串流伺服器,所以也稱為Serverless Streaming 或是Pseudo Streaming。因為使用HTTP 協定不容易自動偵測當時的網路環境,所以必須先備妥各種速率的資料,以適用於不同頻寬的網路環境,而會造成伺服器端硬碟儲存空間的浪費,又因為HTTP 的傳輸層是使用TCP通訊協定,當傳輸資料遺失時會要求重傳,因此容易造成延遲。[2]
在使用HTTP streaming 前,多媒體資料必須先包裝成符合網頁伺服器的特定格式,像RealPlayer 所使用的Real Media Format(.rm)格式或Window Media Player 所使用的Advanced Streaming Format(.asf)格式。
第二類串流技術是利用獨立的串流伺服器將多媒體資料送到使用者的播放器上播放,稱為True Streaming,一般又稱為RTP Streaming,遵守RTP通訊協定,RTP 非常類似HTTP 與FTP (File Transfer Protocol),不過它是針對即時串流的特殊需求所設計。RTP 會以一定的速率,傳送一條單向的資料流到播放器,只要有足夠的網路頻寬傳送資料,播放器就會立即播放媒體資料。播放完後,資料就會消失不見,在使用者的硬碟內不會儲存有任何的檔案。若要重播需透過與串流伺服器再一次連線才行。
RTP 的傳輸層是使用UDP,UDP 在資料遞送方面,會比TCP 快速且有效率,因此可有效避免延遲現象。但因UDP 缺乏回報資料遺失的機制,所以在網際網路或無線網路串流中,會有資料遺失的情況,影響品質下降。另外大部份公司和企業的防火牆都會檔掉UDP,所以在防火牆內是無法接收到藉由UDP 遞送的串流,想要在有防火牆的情況下使用RTP,必須使用HTTP tunneling 技術,亦即將RTP 封包包裹在HTTP 封包內,以方便通過防火牆。但HTTP tunneling 會增加許多額外的資料,佔掉更多的頻寬。
RTP 又可搭配RTCP (Real Time Control Protocol)與RTSP (Real Time Streaming Protocol)。RTCP 可自動偵測現在的網路頻寬。RTSP 支援伺服器與播放器雙向溝通,使用者可以透過RTSP 下指令給伺服器如暫停、快轉、倒帶及跳到下一章等動作。
第三類串流技術叫Clientless Streaming,播放器不是內建在用戶端,而是在串流過程中才送到使用者手上。這類技術主要應用在行動裝置上,尤其是支援Java 技術的平台。這類應用的使用者並不需在用戶端安裝太多的程式,只有在實際需要時,才透過OTA (Over The Air)將Java 版的播放器送到用戶端安裝並播放串流檔案。
目錄
影片
上教學-同步教學篇-以YouTube串流媒體示範
參考資料
- ↑ 串流媒體stream media10.2012
- ↑ 串流媒體02.03.2021 MoneyDJ理財網