孫 彤,張慧鵬,周叢竹
(江蘇省廣電有線信息網絡股份有限公司蘇州分公司,江蘇 蘇州 215006)
為了適應三網融合業務的發展要求,為了服務政府、服務社會以推進江蘇有線蘇州分公司互動業務和增值業務發展,利用高清雙向機頂盒推廣的契機,以用戶需求和業務創新為紐帶,進行數字電視中間件項目實施。根據省公司統一安排,蘇州分公司采用天栢公司提供的中間件系統進行本地應用開發。
中間件是數字電視業務系統的一個重要軟件平臺,提供了數字電視交互增值業務應用的運行環境,包括了對數字電視及三網融合新業務的內容格式和傳輸協議的支持[1-3]。
數字電視中間件平臺包括業務前端部分和終端部分,前端部分是指統一業務接入管理平臺,可以統一管理和發布多種多樣的業務內容,如圖文類業務、視頻類業務、Java類業務等;終端部分是指位于數字電視機頂盒內部實時操作系統與應用程序之間的軟件系統,采用Java與瀏覽器雙引擎技術,屏蔽了機頂盒硬件的差異性,為上層應用提供統一的應用編程接口。
1.2.1 前端系統構架
中間件系統作為一個增值業務應用支撐平臺,可支持業務應用的精彩及分層次表達形式,是一個端到端的解決方案,中間件前端系統為統一業務接入管理系統,整體系統架構如圖1所示。

前端系統組成簡單描述如下:
1)服務管理
服務管理部分包含管理服務器、數據庫服務器、換膚服務器,是前端系統的核心,完成對所有應用資源的統一管理,幫助運營商整合、管理、保存資源,完成應用的添加、升級、審核、發布、刪除等。
2)雙向應用下載
雙向應用下載部分包含Web服務器、網絡負載均衡,雙向機頂盒通過UDP協議發出請求給Web服務器,Web服務器使用UDP協議發送對應的可下載應用清單及應用。
3)單向應用下載
單向應用下載部分包含ADAP服務器、數據發送服務器,ADAP服務器將清單版本號文件(ALVT)、清單列表文件和應用壓縮包文件上傳到數據發送服務器上,數據發送服務器將生成的應用清單及應用以數據廣播方式發送。
4)前端系統接口
包含第三方業務接口服務器,支持省平臺接口、EPG系統接口、BOSS系統接口、業務接口、單向網絡接口和雙向網絡接口。
1.2.2 系統功能
前端系統的主要功能如表1所示。

表1 前端系統功能表
1.3.1 機頂盒軟件架構
數字電視機頂盒軟件是一個復雜的系統,包括硬件驅動、中間件系統平臺以及應用程序系統,圖2描述了機頂盒軟件系統架構。

機頂盒軟件系統從下到上可分為3層:硬件資源和驅動層;中間件系統軟件層;應用程序層。
1.3.2 中間件終端組成
中間件終端系統為上層應用程序提供了一個抽象層,從而隔離了應用程序和硬件平臺,使應用程序的開發不依賴于硬件平臺的差異化,從而實現了應用程序的可移植性和跨平臺性。
蘇州中間件是一個融合了Java引擎、瀏覽器引擎、應用管理器以及硬件適配層軟件的中間件,在系統業務的基礎上對應用執行環境、應用管理、傳輸協議、內容格式、應用信令、安全性等方面提供了支持,圖3表示了中間件的主要模塊構成。

1.3.3 機頂盒移植情況
蘇州中間件終端方案對機頂盒平臺的基本要求如表2所示。

表2 終端平臺配置需求表
蘇州中間件已完成對ST7162、ST7105、海思3716C等主流高清芯片方案的移植,基本滿足目前高清終端業務部署的技術要求。
1)主選單更新流程
主選單更新是指無須通過機頂盒升級,實現主選單界面或者主選單一級、二級應用鏈接的增加、刪除、更改等功能。通過主選單更新,運營商在發布一款新的應用時,無須機頂盒軟件升級即可實現,大大降低了軟件升級的風險。主選單更新的核心是應用列表的更新,支持單向和雙向兩種方式,采用雙向優先的方式,機頂盒開機啟動判斷雙向網絡是否開通,若開通則進入雙向應用更新流程;若未開通則進入單向應用更新流程。為提高機頂盒開機速度,流程步驟如下:
(1)開機檢測應用列表版本號(單向則直接判斷是否需要更新);
(2)應用列表更新,同時顯示原主選單界面或應用;
(3)下載并存儲需更新的主選單界面或應用,然后進行更新操作;
(4)重新開機后即顯示更新后的主選單。
2)兩種更新方式
中間件可通過應用管理器配置開機主選單啟動模式,即Java展示方式還是網頁展示方式。前者的特點是大量的Java標準圖形控件提供了豐富的想象和動態效果,缺點主要在于Java的編程語言相對復雜,界面開發對編程技術要求較高;后者的特點是開發、更新比較便捷,內容信息量充實,但頁面動態風格相對單調。
兩種主選單風格對比如圖4所示。

換膚就是更換機頂盒的用戶操作界面,屬于中間件的個性化應用,可為用戶提供多套機頂盒界面,用戶根據個人喜好選擇自己喜歡的一套界面,下載并保存到機頂盒中。目前換膚功能支持機頂盒全部操作界面的更換和部分操作界面的更換。
換膚是對中間件之上的操作應用程序進行下載更新并存儲在機頂盒本地,通過應用管理器重啟主控虛擬機,重新加載新的皮膚應用。當下載或存儲過程中出現任何異常,中間件都會重新恢復啟動初始應用程序。換膚功能流程如圖5所示。

圖5 換膚功能流程圖
中間件系統在BOSS等相關系統的配合下,可以對不同的機頂盒用戶進行分區域管理。雙向機頂盒通過向服務器上傳STB ID或IP地址來區分,系統可根據不同的區域用戶定向投放個性化推薦信息、社區門戶和滾動字幕等。單向機頂盒則可以通過STB ID或區域碼等過濾信息獲取相應的定向投放信息,實現個性化社區門戶、滾動字幕及信息推薦的功能。
應用管理器也可稱為調度模塊,其核心作用在于合理分配各模塊的資源,包括內存、硬件存儲空間、統一的輸出設備等,同時有效地管理各模塊間的切換和模塊間的通信,從而達到對應用的生存周期和運行狀態進行管理,其具體功能為:
1)多引擎調度管理。主控系統內部各個模塊的生命周期,通過消息機制管理模塊和模塊相互間的通信,可靈活地支持模塊的單獨加載及配置不同的模塊應用場景。
2)輸入輸出管理。主要是對外部輸入消息(如遙控器)和各模塊共用的輸出設備(如屏幕顯示)進行統一的調度管理,并進行模塊間分發和快捷處理以確保使用的唯一性、有效性。
3)內存管理。調度管理的一個重要功能在于合理地分配內存空間,Java方式采用優化高效的內存資源回收機制,有效地確保內存在各模塊切換和并存的應用場景中都能有效地使用內存。
4)多應用管理。對各種應用程序進行靈活的控制管理。
Java語言一個非常重要的特點就是與平臺的無關性,Java語言使用Java虛擬機屏蔽了與具體平臺相關的信息,使得Java語言編譯程序只需生成在Java虛擬機上運行的目標代碼,就可以在多種平臺上不加修改地運行。Java虛擬機引擎結構如圖6所示。

圖6中的虛擬機平臺結構包括:
1)適合于數字電視領域的嵌入式Java虛擬機引擎,擁有核心引擎的主動控制權,方便未來的功能接口拓展;
2)符合國標草案的Java TV接口,其中包含了標準DVB音視頻控制、SI訪問等接口;
3)支持國標草案CDC+PBP,以CDC為主,同時支持CLDC+MIDP;
4)應用管理器可以支持同時運行DVB、股票等多個應用。
瀏覽器引擎基本的技術特點如下:
1)支持1280 ×720高清分辨率和720×576標清分辨率;
2)支持GB2312中英文矢量字體,可根據用戶要求更換字體引擎;
3)支持中英文輸入法;
4)支持標準的HTML4.01全集以及多FRAME,IFRAME等以滿足大部分網頁瀏覽需求,并且同時支持HTML和XML兩個解析;
5)支持JavaScript,CSS,Plug-In等;
6)支持JPEG,PNG,GIF,BMP等圖片格式;
7)符合HTTP1.1 Cache管理規范,可緩存內容,保留瀏覽期間的高速緩存內容。
語法模塊結構如圖7所示。

中間件的適配層軟件抽象定義了三網融合終端各功能模塊,可提供完整的移植解決方案,能全面展現終端硬件平臺的性能和功能,為中間件之上業務的應用做了很好的支撐。主要適配層軟件模塊如圖8所示。
這層軟件是為了確保平臺的移植性而抽象定義出來的,包含與平臺既密切相關又具有一定共性的功能接口模塊,主要包括操作系統、硬件設備、升級管理、SI信息管理、視音頻播控、網絡協議、CA適配層等。通過適配層的封裝,機頂盒廠家僅需按照移植接口進行設備驅動的封裝,即可對接中間件平臺,從而確保中間件平臺可以方便地向各種類型終端進行移植,并最終保證了上層業務應用的平臺無關性。

蘇州數字電視中間件系統可支持的業務如下:
1)現有數字電視業務
目前蘇州數字電視中頻道播放、互動點播、數據廣播及本地化規范等都基本開發完畢;并根據高清中間件的特性集成了如加信息高清庫、海特榮德股票信息高清庫,提高了業務展示效果;后續開發還包括在直播頻道下增加新型人機交互界面等。
2)省云媒體業務
蘇州中間件終端平臺在技術上對接了省云媒體業務中娛樂、萬事通、閱讀、點播、高清、互聯網、商城等業務。
3)信息類業務
信息類業務主要通過Web瀏覽器技術實現,通過單向和雙向兩種方式提供政務信息、文化資訊、健康資訊、天氣預報、物價800等與民生息息相關的信息查詢,并提供電子圖書、電子雜志等;股票信息采用的是Java技術,提供股票實時交易查詢,支持代碼選股和拼音選股以及股評查詢等功能。
4)交易類業務
交易類業務為用戶提供電視商城、在線票務查詢、雙向股票交易等應用,支持用戶在線瀏覽、電話訂購,該類業務采用Web瀏覽器和Java虛擬機技術實現。
5)電視互聯網
蘇州中間件Web瀏覽器模塊支持通用HTML標準,可訪問省平臺分發的電視互聯網應用,讓用戶體驗通過電視上網的效果。
6)游戲
電視游戲業務基于Java技術或Web瀏覽器技術,提供用戶通過電視體驗單機或聯機類的各種游戲娛樂。
7)網絡流媒體
流媒體點播業務采用RTSP協議,通過中間件平臺流媒體播放器的協議封裝,利用高清機頂盒H.264,MPEG-2解碼功能,進行網絡流媒體視音頻播放,支持基于網絡的視頻點播、在線音樂等業務。
8)其他新業務
后續正在開發支持視頻通話、家居安防、終端監控、行為分析等新業務新功能。
數字電視中間件系統屏蔽了不同型號機頂盒底層接口的差異性,按照開放的標準為增值業務應用開發提供API接口,使第三方應用能夠快速開發部署,不需要頻繁升級機頂盒軟件,為蘇州云媒體的推出奠定了技術基礎。通過中間件系統的運用可以改變傳統廣播電視網的網絡形態和業務模式,使終端可承載數字電視、互動點播、新型交互業務、數據業務和視頻通話等三網融合業務。
[1]甘育裕,譚瑋.數字電視機頂盒中間件的研究[J].電視技術,2007,31(6):42-44.
[2]陸瑋玨,葉德建.面向下一代網絡電視的多媒體展示框架中間件[J].電視技術,2011,35(21):69-72.
[3]邵珺.數字電視中間件雙核“心”[J].電視技術,2010,34(1):11-13.