常用的中間件標準(MHP)介紹歐洲廣播聯(lián)盟(European Broadcast Union:EBU)所制訂了包括衛(wèi)星、有線電視、地面廣播等一系統(tǒng)數(shù)字電視廣播(Digital Viedo Broadcasting:DVB)標準之后,以MHP作為互動電視應用的標準。EBU制訂MHP的目標是為互動電視應用建立一個通用的平臺。
DVB/MHP標準采用Sun公司的Java VM為基礎平臺,將來無論是用Java或Personal Java語言所開發(fā)的應用程序,都可以在交互式的數(shù)字電視STB中執(zhí)行。DVB/MHP標準1.0已公布并獲得歐洲通信標準組織(EuroPean Telecommunications Standards Institute:ETSI)的認可。由于發(fā)表較早且完整,為互動電視發(fā)展情況較好的歐洲業(yè)界所接受,因此估計將順利取得市場優(yōu)勢。在2001年11月底所舉行的美國有線電視Western Show中,有多家廠商展示以此中間件標準為開發(fā)基礎的應用產(chǎn)品。
3.1.1、MHP的發(fā)展歷史
多媒體家庭平臺(MHP)是由一個叫UNITEL的歐洲組織提出的,其目標是開發(fā)一個可接入多種數(shù)字多媒體服務的通用平臺。
1993年 在數(shù)字電視的交互平臺上提出該方案;
1997年 被列入DVB計劃中;
1998年7月 Sun Java虛擬機技術(shù)被加到MHP內(nèi)核中;
2000年2月 Steering Board(EIGT指導委員會)第28屆大會批準在DVB中加
入MHP1.0標準;
2000年7月 MHP1.0成為ETSI標準系列中的TS101 812;
2001年4月 DVB發(fā)布MHP1.0.1一致性測試和版本文檔,DVB和ETSI中心達成
MHP管理協(xié)議。MHP專家組著手開發(fā)MHP Test Suite;
2001年10月 ETSI發(fā)布MHP1.0.1為TS101 812 V1.1.2;
2001年11月 ETSI發(fā)布MHP1. 1為TS101 812 V1.1.1
2002年4月 芬蘭成為世界上第一個通過使用MHP來實現(xiàn)無線實況轉(zhuǎn)播互動服務
的國家;
2002年11月 Streering Board通過根據(jù)CableLabs OCAP(美國有線電視實驗室交互
式服務的有線電視產(chǎn)業(yè)軟件標準)而制訂的GEM(Globally Executable
MHP)第一個版本;
2002年12月 DVB通過MHP Test Suite 1.0.2b――第一個完整的MHP測試包;
2003年1月 ETS發(fā)布GEM為標準TS102 819;
2003年4月 DVB批準MHP1.0.3,MHP1.1.1,并遞交給ETSI,分別進行作為標
準TS101 812V1.3.1和標準TS102 812V1.2.1標準化工作;
2003年6月 ARIB(日本DTV標準)宣告在日本的數(shù)據(jù)廣播中接受基于GEM的應
用環(huán)境;
2003年7月 ETSI就批準發(fā)布標準ES201 812 V1.1.1(一個ETSI的MHP標準版本)
征詢意見。
3.1.2、MHP技術(shù)特點
MHP主要定義了機頂盒中間件的整體結(jié)構(gòu)、傳送協(xié)議、內(nèi)容格式、Java虛擬機和DVB-J APIs、安全性、各層的細節(jié)、應用狀態(tài)和表現(xiàn)、應用的自動啟動等,還定義了專用的應用信令。
3.1.2.1、MHP構(gòu)架:
MHP被定義成三層:資源層,系統(tǒng)軟件層和應用層。典型的資源層包括:MPEG處理,I/O設備,CPU,存儲和圖形系統(tǒng)。系統(tǒng)軟件層給應用層提供一個抽象的可視的平臺,通過執(zhí)行一個應用管理器(亦被稱作navigator)來管理MHP和MHP上的應用。
3.1.2.2、MHP內(nèi)核:
MHP的核心部分――系統(tǒng)軟件的本質(zhì)就是一個中間件,與其它的中間件不同的是,MHP中間件不是一個私有的中間件,它是一個開放的、統(tǒng)一的中間件。MHP標準只是定義了一些API接口,它沒有給出實現(xiàn)MHP的方法,因些,實現(xiàn)MHP的具體方案主要由中間件廠商和機頂盒廠商給出。
許多軟件包提供了該平臺的常用API。MHP應用只需通過這些指定的API訪問平臺。在指定API跟底層資源和系統(tǒng)軟件之間需要一個映射。
MHP建立在DVB-J的基礎上。DVB-J包括Sum Mircosystems公司的Java虛擬機。
3.1.2.3、MHP應用層次
MHP把所有的交互作用按照應用領(lǐng)域劃分成三個層次:增強廣播,交互廣播和Internet訪問。
增強廣播:
該層次的應用不需要回傳信道,只需下載應用后,在本地與視音頻實現(xiàn)交互;
交互廣播:
該層次是增強廣播的超集,應用需要回傳信道,能夠?qū)崿F(xiàn)真正的交互;
Internet訪問:
該層次是交互廣播的超集,它提供了互聯(lián)網(wǎng)服務(E-mail,Web瀏覽和chat等)。
3.1.2.4、MHP標準主要有以下內(nèi)容
MHP系統(tǒng)基本結(jié)構(gòu);
傳輸協(xié)議(DSM-CC Object Carousel, DVB Object Carousel 和IP等);
內(nèi)容格式
圖形格式: PNG、GIF、JPEG、MPEG-2 I幀或P幀、MPEG-1/2音頻、
DVB字幕、UTF-8;
碼流格式: MPEG-2 I視頻、MPEG-1/2音頻、DVB字幕、DVB圖文電視、
駐留字符、下載字符、HTML和XML;
DVB-HTML(HTML4.0,ECMAScript,CSS2和DOM2);
應用模式和信號機制;
DVB-J平臺(DVB API,Java API,Java TV);
安全加密;
層次定義;
互聯(lián)網(wǎng)訪問。
3.1.2.5、MHP的應用
MHP機頂盒模型,見下圖:
OpenTV MHP機頂盒結(jié)構(gòu)體系,如下圖如示:
NDS MHP機頂盒體系結(jié)構(gòu),如下圖所示:
Philips MHP機頂盒體系結(jié)構(gòu):
3.1.2.6、MHP的關(guān)鍵技術(shù)
Java TV API是基于Personal Java應用環(huán)境的應用程序接口,是Java平臺面向MHP終端的擴展,它提供了對MHP終端特有功能的控制,包括對業(yè)務信息數(shù)據(jù)庫的訪問、業(yè)務選擇、TV上的媒體播放器控制等。Java TV API是針對終端媒體及接收功能的,不包括其他電子設備共有的API。由于Java TV API是獨立于硬件和物理線纜傳輸協(xié)議的更抽象的高層協(xié)議,因此也可以在一些現(xiàn)存的標準中使用。此外,MHP終端中各種應用的生命周期由Java TV API的Xlet應用模型定義。Xlet運行時可以進行資源的申請和釋放,顯示內(nèi)容的存取,發(fā)現(xiàn)和選擇業(yè)務。
3.1.2.6.1、Personal Java和Java TV
Personal Java是專為構(gòu)建可連接網(wǎng)絡的消費類電子設備而設計的Java應用環(huán)境(JAE)。該環(huán)境主要用于家庭、辦公室和移動性應用及產(chǎn)品的設計與實現(xiàn)。適合于這種應用環(huán)境的消費類電子設備包括手持移動設備(PDA和HPC等)、數(shù)字機頂盒和游戲操作臺等。
Personal Java平臺主要包括Java虛擬機(JVM)、必要的Java類、國際化(118N)支持和面向消費類產(chǎn)品的AWT。其中Java虛擬機包括字節(jié)碼解碼器、字節(jié)碼校驗器、類加載器和垃圾收集機,支持Unicode文本、32位和64位整數(shù)、多維數(shù)組、浮點數(shù)、線程和異常處理,同時還支持Java Beaus、Java Applet和數(shù)字簽名。在必要的Java類中,包括輸入/輸出、語言支持和使用工具類。國際化(118N)支持指的是產(chǎn)品使用時在本地整體的包裝,以便支持開發(fā)者所選擇的語言,因此保證了空間和存儲器的有效利用。面向消費類產(chǎn)品的AWT版本提供圖形和窗口顯示特征,支持低分辨率的顯示和可選擇的輸入設備,甚至可以擴展到?jīng)]有標準鼠標和鍵盤的設備。
Java TV API 是一個編程接口,面向交互式電視應用或數(shù)字廣播接收終端上其他軟件應用的開發(fā)。它可以提供多種機制(如確定當前的廣播業(yè)務,選擇特定的廣播業(yè)務,控制廣播內(nèi)容流和支持EPG)來控制一個應用的生命周期。
3.1.2.6.2、業(yè)務和業(yè)務選擇
業(yè)務(Service)是指呈現(xiàn)在終端上的各種元素,是可選擇的。其中,表示其特征所對應的業(yè)務信息(SI——Service Information)存放于SI庫中。SI表達的是關(guān)于視音頻數(shù)據(jù)流的內(nèi)容的信息?,F(xiàn)在使用的SI具有多種不同的標準。在MHP終端的Java TV API中,由于底層的透明性,各種格式的SI可以通用于所有的應用。SI庫對象模型為應用提供該庫的多視圖。通過制定一個特定的視圖,應用可以僅涉及到SI庫的一部分。SI庫的視圖包括工具(Util)、導航(Navigation)、指南(Guide)和傳輸(Transport)。工具視圖提供對一般對象和輔助對象(事件和異常等)實例化的手段。導航視圖提供的對象用于在業(yè)務中導航。指南視圖表達與EPG相關(guān)的對象。
業(yè)務選擇API支持應用以簡單高級的方式控制業(yè)務的呈現(xiàn),而不需了解業(yè)務的內(nèi)部細節(jié)。它將多個繁瑣的操作封裝在簡單的方法調(diào)用中。業(yè)務呈現(xiàn)環(huán)境用Service Context來表達,其中的選擇方法可以用來呈現(xiàn)一個業(yè)務。該選擇是異步的,操作的完成通過事件來通知,失敗時報異常。終端可以對支持的Service Context類實例數(shù)目進行限制。
3.1.2.6.3、JMF(Java Media Framework)和廣播管道
Java TV API利用JMF管理廣播媒體管道。Java TV API定義了一系列的API和框架,用來顯示基于時間、獨立于傳輸機制、傳輸協(xié)議和媒體類型的媒體流。JMF通過定義javax、media、Player來處理基于時間的媒體數(shù)據(jù)。一個Player對象封裝一個狀態(tài)機,可以用來獲取資源和管理媒體流的呈現(xiàn)。通過Player對象,還可以訪問以GUI對象形式包裝的視頻流。
3.1.2.6.4、廣播數(shù)據(jù)API
Java TV API支持以下幾種基本訪問格式訪問廣播數(shù)據(jù):DSM-CC對象和數(shù)據(jù)輪,這是對java.io的擴展。Java TV API通過java.io中的文件訪問機制支持對DSM-CC對象輪和數(shù)據(jù)輪的訪問。與DSM-CC協(xié)議的交互基本上是由Java TV API完成的,非常便于移植。IP數(shù)據(jù)報封裝是java.net的擴展。如果底層支持,Java TV API可通過java.net包中的傳統(tǒng)數(shù)據(jù)報機制提供對封裝在廣播流中的IP包的訪問。PES(MPEG-2 Packtized Elementary Stream)格式的流數(shù)據(jù)是javax.media.protocol的擴展。
3.1.2.7、MHP存在的問題
在MHP中,幾種不同類型的程序包交織在一起成為一個混合體,其中主要的程序包有pJava、 DAVIC、DVB、 JavaTV和Havi等。Personal Java標準包是由Sun公司定義的基于pJava 1.1.8的標準包。DVB是由DVB/MHP技術(shù)委員會提供的程序包,它主要是對DAVIC 程序包及一些Java標準包的補充。在這些程序包中,有不少存在著嚴重的設計缺陷。例如,相對于DAVIC/DVB程序包而言,JavaTV程序包的作用并不大。JavaTV程序包主要由JavaTV Consortium提供,Sun系統(tǒng)公司掌握著其知識產(chǎn)權(quán),其內(nèi)容幾乎含蓋所有的DAVIC和DVB程序包,但它并沒有一個明顯的資源管理模式,如果幾個應用程序同時需要同一個資源時,不同的實現(xiàn)模型便會有不同的結(jié)果。
Havi圖形包也有其缺陷,它建立在java.awt基礎之上,可利用AWT的lightweight component重建一套與AWT一樣的二維圖形widget體系。但由于它不能完全取代AWT,因而造成了兩種圖形包共存的局面。另外,DVB-HTML標準也不是很成功。在MHP標準的形成過程中,對HTML的定義也一直存在著激烈的爭論。
在MHP中存在的種種問題已為人們所認識,它的1.0更正版(1.0.1)就提出1000多條修改和重建程序包的意見,而且其測試程序包也遲遲不能完成,這些都說明了其繁雜的程度 。
當然,DVB/MHP也有不少可取之處,主要有兩點:一是應用程序下載后的標識和運行模式;二是應用數(shù)據(jù)認證,以及機頂盒內(nèi)部資源的權(quán)限管理和X.509認證書的應用,這使得它與目前互聯(lián)網(wǎng)傳輸數(shù)據(jù)的認證取得一致
本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請
點擊舉報。