《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 業(yè)界動(dòng)態(tài) > 基于DVB和IP雙結(jié)構(gòu)傳輸模式流媒體視頻點(diǎn)播系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

基于DVB和IP雙結(jié)構(gòu)傳輸模式流媒體視頻點(diǎn)播系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

2008-07-07
作者:黃新強(qiáng)1, 朱珍民2

??? 摘 要: 針對(duì)互聯(lián)網(wǎng)流媒體" title="流媒體">流媒體視頻點(diǎn)播" title="視頻點(diǎn)播">視頻點(diǎn)播傳輸帶寬問題,對(duì)數(shù)字廣播協(xié)議原理和多協(xié)議封裝技術(shù)做了簡(jiǎn)單介紹,提出了一種基于IP OVER DVB傳輸模式" title="傳輸模式">傳輸模式互聯(lián)網(wǎng)-廣播網(wǎng)雙結(jié)構(gòu)流媒體視頻點(diǎn)播系統(tǒng)的設(shè)計(jì)方案,并給出了一種Web網(wǎng)頁視頻點(diǎn)播應(yīng)用具體實(shí)現(xiàn)方法;該系統(tǒng)綜合了互聯(lián)網(wǎng)和廣播網(wǎng)的網(wǎng)絡(luò)特性,具有雙向交互、穩(wěn)定可靠,不受用戶規(guī)模限制等諸多優(yōu)點(diǎn)。
??? 關(guān)鍵詞: 流媒體? 視頻點(diǎn)播? DVB協(xié)議? 多協(xié)議封裝? IP OVER DVB

?

??? 流媒體是網(wǎng)絡(luò)和數(shù)字媒體技術(shù)相融合的產(chǎn)物。多媒體數(shù)據(jù)在傳輸前先經(jīng)過編碼器壓縮成碼流,用戶可以通過網(wǎng)絡(luò)或者特定數(shù)字信道接收數(shù)據(jù)并實(shí)時(shí)解碼播放。這種壓縮傳輸、邊下載邊播放的工作方式既可以減少對(duì)網(wǎng)絡(luò)資源的帶寬占用,又能為用戶提供實(shí)時(shí)同步的視頻服務(wù)。如今流媒體技術(shù)已廣泛用于新聞出版、電子商務(wù)、視頻會(huì)議、遠(yuǎn)程教育等互聯(lián)網(wǎng)信息服務(wù)領(lǐng)域。
??? 即便如此,目前互聯(lián)網(wǎng)的網(wǎng)絡(luò)狀況也很難支持大用戶規(guī)模、穩(wěn)定可靠的、高品質(zhì)的視頻服務(wù)。因互聯(lián)網(wǎng)遵循的是“端對(duì)端”的原則,網(wǎng)民規(guī)模難以擺脫帶寬限制;它的網(wǎng)絡(luò)層只提供“盡力而為之”的服務(wù),規(guī)模越大,可靠性與安全性越?jīng)]有保證,而流媒體采用邊下載邊播放的工作方式,要求有較穩(wěn)定的帶寬環(huán)境;雖然多媒體文件在傳輸前經(jīng)過壓縮,但是相對(duì)文字和圖片,容量仍然比較大,因此服務(wù)器端仍然需要承擔(dān)大量數(shù)據(jù)的傳輸,況且互聯(lián)網(wǎng)路由復(fù)雜,往往從視頻源到接收端要經(jīng)過路由轉(zhuǎn)接跳數(shù)多達(dá)十幾個(gè),對(duì)整個(gè)傳輸網(wǎng)絡(luò)也有不小的負(fù)擔(dān)。通?;ヂ?lián)網(wǎng)站只能支持視頻直播的碼流在600kbps左右,難以達(dá)到滿意的視聽效果,在很大程度上限制了流媒體應(yīng)用的發(fā)展和普及。
??? 與此相反,覆蓋全國(guó)的廣播網(wǎng),由于采用廣播方式播送,其數(shù)據(jù)通過衛(wèi)星傳輸或者有線網(wǎng)傳輸直接入戶,中途沒有路由轉(zhuǎn)接,沒有信道擁堵,不僅能保證穩(wěn)定的視頻碼流,而且不受用戶數(shù)量限制。由此可見,互聯(lián)網(wǎng)與廣播網(wǎng)具有很強(qiáng)的互補(bǔ)性。隨著廣播網(wǎng)的數(shù)字化,通過數(shù)字廣播協(xié)議封裝IP協(xié)議數(shù)據(jù)技術(shù)可以實(shí)現(xiàn)互聯(lián)網(wǎng)-廣播網(wǎng)雙網(wǎng)互聯(lián),為構(gòu)建互聯(lián)網(wǎng)-廣播網(wǎng)雙結(jié)構(gòu)網(wǎng)絡(luò)開展流媒體視頻點(diǎn)播應(yīng)用提供了平臺(tái)支持。本文主要討論在互聯(lián)網(wǎng)-廣播網(wǎng)雙結(jié)構(gòu)網(wǎng)絡(luò)基礎(chǔ)上,基于IP over DVB傳輸模式,構(gòu)建流媒體視頻點(diǎn)播平臺(tái)的設(shè)計(jì)方案和實(shí)現(xiàn)方法。

1 數(shù)字視頻廣播協(xié)議和網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)
1.1 數(shù)據(jù)視頻廣播

??? 數(shù)字視頻廣播DVB(Digital Video Broadcasting)簡(jiǎn)稱數(shù)字廣播,是由歐洲電信聯(lián)盟(ETSI)制定的基于MPEG-2的國(guó)際標(biāo)準(zhǔn)傳輸技術(shù),信源編碼和系統(tǒng)復(fù)用部分都遵循MPEG-2國(guó)際標(biāo)準(zhǔn),信道編碼部分則根據(jù)信道不同而有衛(wèi)星傳輸(DVB-S)、有線傳輸(DVB-C" title="DVB-C">DVB-C)、地面開路廣播(DVB-T)等。我國(guó)已經(jīng)將DVB-S作為衛(wèi)星數(shù)字電視標(biāo)準(zhǔn),而DVB-C也已經(jīng)成為我國(guó)現(xiàn)行數(shù)字電視的“行業(yè)標(biāo)準(zhǔn)”。下面對(duì)有線網(wǎng)(HFC網(wǎng))數(shù)字廣播網(wǎng)進(jìn)行說明,它利用現(xiàn)有的CATV網(wǎng)絡(luò)進(jìn)行傳輸,一個(gè)原來8MHz帶寬模擬頻道,采用DVB-C傳輸技術(shù),利用64QAM調(diào)制傳輸數(shù)字信號(hào),傳輸速率可以達(dá)到42Mbps,擴(kuò)充了傳輸帶寬,在不影響傳統(tǒng)模擬電視傳輸?shù)耐瑫r(shí),能夠同時(shí)開展數(shù)字電視、高速數(shù)據(jù)傳輸、VOD等應(yīng)用。數(shù)字廣播能夠以很高的速度將文本、圖形、視頻、音頻、數(shù)據(jù)等傳輸?shù)絇C、機(jī)頂盒等智能設(shè)備,這種數(shù)據(jù)傳播方式不僅信源豐富,傳播廣泛,而且還避免了信道擁堵、不能保存等不足。圖1給出了有線網(wǎng)數(shù)字廣播網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。

??? 前端的數(shù)據(jù)可以是本地服務(wù)器的文件,也可以是來自互聯(lián)網(wǎng)的IP數(shù)據(jù)包。DVB網(wǎng)關(guān)偵聽網(wǎng)上的IP數(shù)據(jù)包,按照DVB的標(biāo)準(zhǔn)將IP數(shù)據(jù)包封裝成MPEG-2傳輸流,通過復(fù)用器與其他TS流(如數(shù)字電視TS流)進(jìn)行復(fù)用。復(fù)用后的TS流調(diào)制到某個(gè)模擬頻道并與其他模擬節(jié)目混合在一起通過有線網(wǎng)絡(luò)進(jìn)行傳輸。在接收端,用戶通過安裝在個(gè)人電腦上的DVB數(shù)據(jù)接收卡" title="接收卡">接收卡或者機(jī)頂盒將來自有線電視網(wǎng)中符合DVB-C標(biāo)準(zhǔn)的有線電視信號(hào)進(jìn)行解調(diào)、糾錯(cuò)、解擾、解復(fù)用等處理,最后將數(shù)據(jù)存儲(chǔ)到PC上或者直接在電視上播出。
1.2 多協(xié)議封裝-IP OVER DVB傳輸模式
??? 針對(duì)不同的應(yīng)用類型,DVB定義了以下六種方式:數(shù)據(jù)管道、數(shù)據(jù)流、多協(xié)議封裝、數(shù)據(jù)傳送帶、對(duì)象傳送帶、用戶自定義的服務(wù)。圖2為DVB數(shù)字廣播協(xié)議結(jié)構(gòu)。


??? 協(xié)議封裝提供了在MPEG-2 TS流之上傳送IP協(xié)議數(shù)據(jù)的一種機(jī)制即IP over DVB傳輸模式。由圖2可見,通過IP over DVB傳輸模式,應(yīng)用層的IP數(shù)據(jù)包最終被封裝成MPEG-2傳輸流。其中,傳輸流的包長(zhǎng)為固定的188B,包含TS頭、適配域和凈荷數(shù)據(jù)。TS頭由同步字節(jié)、標(biāo)志位、指示位、PID加上其他諸如糾錯(cuò)的定時(shí)等信息組成。其中PID用于區(qū)別不同的流和不同的節(jié)目特定信息(PSI)。圖3為MPEG-2 TS流數(shù)據(jù)包結(jié)構(gòu)。

?

2 雙結(jié)構(gòu)視頻點(diǎn)播系統(tǒng)設(shè)計(jì)方案
2.1總體設(shè)計(jì)思想

??? 在視頻發(fā)送端和接收端間建立互聯(lián)網(wǎng)-廣播網(wǎng)兩種網(wǎng)絡(luò)連接,形成一個(gè)通信的閉環(huán)?;ヂ?lián)網(wǎng)負(fù)責(zé)信息交互和傳輸控制,而大容量的視頻內(nèi)容通過數(shù)字廣播通道單向傳輸。這樣既秉承了互聯(lián)網(wǎng)的交互特性,也保證了視頻傳輸?shù)目煽啃院桶踩?,即使是視頻直播,也不受接收用戶數(shù)量的影響;在廣播接收終端,PC機(jī)通過鏡像存儲(chǔ),把瞬態(tài)存在的廣播數(shù)據(jù)流變成可以本地點(diǎn)播觀看的視頻資源;機(jī)頂盒也可把收到的視頻內(nèi)容寫入終端存儲(chǔ)器。這樣信道只需傳輸新鮮內(nèi)容或差分內(nèi)容,進(jìn)一步提高了廣播通道的使用效率,最終實(shí)現(xiàn)不受用戶規(guī)模限制、可雙向交互、穩(wěn)定可靠的高品質(zhì)視頻點(diǎn)播服務(wù)。圖4為互聯(lián)網(wǎng)-廣播網(wǎng)雙結(jié)構(gòu)流媒體視頻點(diǎn)播網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。

?

??? 互聯(lián)網(wǎng)前端視頻播出系統(tǒng)主要由Web網(wǎng)頁服務(wù)器、視頻服務(wù)器、節(jié)目采集系統(tǒng)、視頻節(jié)目庫組成,所有數(shù)據(jù)經(jīng)由互聯(lián)網(wǎng)傳輸,如圖4所示。雙結(jié)構(gòu)前端視頻點(diǎn)播系統(tǒng)構(gòu)架與互聯(lián)網(wǎng)視頻播出系統(tǒng)構(gòu)架基本一致,只需將視頻服務(wù)器視頻數(shù)據(jù)傳輸路徑設(shè)置為數(shù)字廣播即可。
2.2 IP over DVB傳輸模式和透明傳輸
??? 前端視頻播出系統(tǒng)發(fā)送的IP數(shù)據(jù)被封裝成DVB協(xié)議的TS流,通過數(shù)據(jù)廣播網(wǎng)絡(luò)傳輸,接收端采用PC機(jī)中的DVB-C接收卡或TV的DVB-C機(jī)頂盒的寬帶接入方式,可將來自廣播網(wǎng)中的視頻數(shù)據(jù)送入PC機(jī)或DVB-C機(jī)頂盒中,并最終還原成TCP/IP協(xié)議數(shù)據(jù),以IP數(shù)據(jù)包的形式提交給上層應(yīng)用程序,DVB-C接收卡的協(xié)議層模型如圖5所示。

?

??? 由于采用IP over DVB傳輸模式,屏蔽了互聯(lián)網(wǎng)和廣播網(wǎng)網(wǎng)絡(luò)傳輸差異。用戶在使用計(jì)算機(jī)系統(tǒng)時(shí),無需感知應(yīng)用程序和信息資源的具體所在,只要用戶提出要求,就可以得到相應(yīng)的信息,實(shí)現(xiàn)“跨網(wǎng)”的透明傳輸。
2.3 基于COM組件的網(wǎng)頁視頻點(diǎn)播功能實(shí)現(xiàn)方法
??? COM組件是遵循COM規(guī)范編寫、以Win32動(dòng)態(tài)鏈接庫(DLL)或可執(zhí)行文件(EXE)形式發(fā)布的可執(zhí)行二進(jìn)制代碼, COM組件在應(yīng)用開發(fā)方面具有以下特點(diǎn):
??? (1)同一COM組件可以在不同的應(yīng)用環(huán)境中重復(fù)使用。COM組件不一定是為專門的系統(tǒng)而設(shè)計(jì),可以有較寬的應(yīng)用領(lǐng)域,不會(huì)因?yàn)槟骋幌到y(tǒng)的“過時(shí)”而被“廢棄”。
??? (2)COM組件之間彼此獨(dú)立。應(yīng)用則被看成COM 組件集合。當(dāng)應(yīng)用需求發(fā)生變更時(shí),可能需要更換中間層的個(gè)別COM組件,但這并不會(huì)影響其他組件的繼續(xù)使用。
??? (3)COM組件具有若干對(duì)外接口(屬性和方法),根據(jù)不同的應(yīng)用需求,可以有選擇地使用不同的方法,調(diào)用方無需了解組件內(nèi)部具體實(shí)現(xiàn)。
??? (4)COM組件既可以被嵌入動(dòng)態(tài)Web頁面,又可以在VB和VC等開發(fā)環(huán)境中使用。
??? 因此,COM組件非常適合于Internet中的各種事務(wù)處理。筆者采用Window Media Player插件作為網(wǎng)頁播放器,將DVB-C接收卡COM組件嵌入到Web頁面中,用戶訪問該頁面時(shí)將下載該組件并自動(dòng)在本地注冊(cè),腳本描述語言(Script)可以通過調(diào)用方法(Method)與DVB-C接收卡COM組件進(jìn)行通信,無需了解DVB-C接收卡具體工作過程。圖6為視頻點(diǎn)播網(wǎng)頁腳本工作流程圖。


??? DVB-C接收卡COM組件對(duì)外接口的調(diào)用方法定義為:DVBCtl.SetMsg(ULONG DVBMsg)。其中,DVBCtl為COM組件類對(duì)象名稱;SetMsg(ULONG DVBMsg)為調(diào)用方法名稱;ULONG DVBMsg 為IE網(wǎng)頁腳本向COM組件DVBCtl. COM傳遞的字符串參數(shù),包括頻道、PID、符號(hào)率、QAM調(diào)制方式信息。
??? 利用面向?qū)ο蟮目梢暬_發(fā)工具M(jìn)icrosoft Visual C++可以很便捷地開發(fā)DVB-C接收卡COM組件,而DVB-C接收卡功能的具體實(shí)現(xiàn)則被封裝在COM組件中。DVB-C接收卡COM組件內(nèi)部的主要功能函數(shù)定義為:
??? ·void OnNcOpen();//打開DVB-C卡
??? ·void OnNcClose();//關(guān)閉DVB-C卡
??? ·void OnNcTune(ULONG Channel,ULONG Sym,ULONG Qam);//設(shè)置DVB-C卡參數(shù)(通道、符號(hào)率、調(diào)制方式)
??? ·void OnNcQuerystatus();//DVB-C卡狀態(tài)查詢
??? ·void OnNcAddpid(ULONG Pid);//添加PID
??? ·void OnNcDelpid(ULONG Pid);//刪除PID
??? ·void OnSaveToFile(ULONG Filename);//讀數(shù)據(jù)并將TS流轉(zhuǎn)換成IP數(shù)據(jù)文件。
??? 圖7為DVB-C接收卡COM組件內(nèi)部控制流程圖。


??? 該方案充分考慮到互聯(lián)網(wǎng)和數(shù)字廣播網(wǎng)的特點(diǎn),取長(zhǎng)補(bǔ)短,在不對(duì)現(xiàn)有互聯(lián)網(wǎng)流媒體視頻點(diǎn)播軟件系統(tǒng)作大調(diào)整的基礎(chǔ)上,同時(shí)有效利用豐富的廣播網(wǎng)絡(luò)帶寬和用戶資源,建立一套不受用戶規(guī)模限制、可雙向交互、穩(wěn)定可靠的高品質(zhì)視頻點(diǎn)播系統(tǒng),為我國(guó)企業(yè)流媒體視頻應(yīng)用提供了一種經(jīng)濟(jì)有效的技術(shù)方案。
互聯(lián)網(wǎng)和數(shù)字廣播網(wǎng)各有特點(diǎn)、互有長(zhǎng)短,兩者之間的區(qū)別比較如表1所示。

?

??? 如果能發(fā)揮兩網(wǎng)各自優(yōu)勢(shì)、取長(zhǎng)補(bǔ)短,當(dāng)用戶提出內(nèi)容需求時(shí),信息資源將自動(dòng)以最低成本的方式到達(dá)用戶端,而用戶無需感知信息資源是來自何種網(wǎng)絡(luò),實(shí)現(xiàn)“跨網(wǎng)”透明操作,將有助于實(shí)現(xiàn)互聯(lián)網(wǎng)、廣播網(wǎng)等多種網(wǎng)絡(luò)的真正融合。
參考文獻(xiàn)
[1] ?EN301192V1.2.1.Digital Video Broadcasting(DVB).DVB specification for data broad casting[S].1999-06.
[2]? Information technology-ceneric coding of moving pictures and associated audio information-Part6:Extension for Digital Storage Media Command and Control(DSM-CC)-International Standard(IS)[S].ISO/IEC13818-6.
[3]? Digital Video Broad casting(DVB)[S].Network-independent ?protocols for DVB interactives revices,ETS300802-1997.
[4]? ETSI standard EN 300 421-1998, Digital Video Broadcasting(DVB),Framing structure, channel coding and modulation for cable systems.
[5]? 馬衛(wèi)東,李幼平,袁宏春. IP 0ver DVB技術(shù)及其應(yīng)用[J].微電子學(xué)與計(jì)算機(jī),2001,(5).
[6]? 陳彪,石旭剛,朱廣信.基于IP/DVB-C的HFC網(wǎng)高速數(shù)據(jù)廣播系統(tǒng)[J].電視技術(shù),2002,(7).
[7]? 周志,王貽良.DVB數(shù)據(jù)廣播標(biāo)準(zhǔn)及實(shí)現(xiàn)[J].電視技術(shù),2000,(5).
[8]? STEVENS W R.TCP/IP詳解(卷1,協(xié)議)[M].北京:機(jī)械工業(yè)出版社, 2001.
[9]? 鐘玉琢,白哲,沈洪.流媒體和視頻服務(wù)器[M].北京:清華大學(xué)出版社,2003.
[10]? [美]MACK S著, 刑栩嘉譯.流媒體寶典[M].北京:電子工業(yè)出版社,2003.
[11]? DAVID J K著.潘愛民,王國(guó)印譯. Inside Visual C++ 4th Edition [M].北京:清華大學(xué)出版社,2001.
[12]? 黃維通. Visual C++面向?qū)ο笈c可視化程序設(shè)計(jì)[M].北京:清華大學(xué)出版社, 2003.

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請(qǐng)及時(shí)通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。