網(wǎng)絡(luò)電視(IPTV)也叫交互式網(wǎng)絡(luò)電視,是利用互聯(lián)網(wǎng)的基礎(chǔ)設(shè)施,,以電視機作為主要終端設(shè)備,,集互聯(lián)網(wǎng)、多媒體,、通信等多種技術(shù)于一體,,通過互聯(lián)網(wǎng)絡(luò)協(xié)議(IP)向家庭用戶提供包括數(shù)字電視在內(nèi)的多種交互式數(shù)字媒體服務(wù)的嶄新技術(shù)。現(xiàn)在市場上基于各種嵌入式操作系統(tǒng)的網(wǎng)絡(luò)電視軟件解決方案有很多,,本文重點描述在嵌入式Linux平臺上,,基于MiniGUI/mDolphin/mPeer技術(shù)構(gòu)造出的網(wǎng)絡(luò)電視方案。
無論是何種嵌入式設(shè)備,,只要涉及到用戶交互,,那么GUI就是該設(shè)備軟件部分的基礎(chǔ),網(wǎng)絡(luò)電視也不例外,。在嵌入式Linux平臺上可供選擇的GUI系統(tǒng)也有很多,,如X Window、Qt/Embedded和MiniGUI等,,而MiniGUI的性能及資源占用明顯優(yōu)于其他圖形系統(tǒng),。
網(wǎng)絡(luò)電視的一個核心是網(wǎng)頁瀏覽器,有了它用戶才能夠進(jìn)行站點瀏覽,、下載等操作,。本方案中采用的mDolphin瀏覽器,使用的是WebKit開源瀏覽器解析和渲染引擎(也是Apple Safari瀏覽器、Google Chrome瀏覽器采用的核心引擎),,確保瀏覽器產(chǎn)品具有和PC機上的瀏覽器相同的網(wǎng)頁解析和渲染能力,,從而保證產(chǎn)品的高起點。
網(wǎng)絡(luò)電視的另一個核心應(yīng)當(dāng)是大量的應(yīng)用軟件,,如游戲,、音視頻播放等。本方案還引入了嵌入式J2SE解決方案——mPeer,,將Java語言引入到網(wǎng)絡(luò)電視應(yīng)用程序的開發(fā)中,,使得開發(fā)者既可以進(jìn)行基于MiniGUI的Linux程序開發(fā)(C/C++),也可以使用Java,。
基于MiniGUI來開發(fā)應(yīng)用軟件的難度相對較高,,開發(fā)者不但需要Linux程序開發(fā),更要精通MiniGUI API才能夠進(jìn)行開發(fā),,但是這種開發(fā)方式的優(yōu)點也是很明顯的,,那就是開發(fā)出來的應(yīng)用軟件性能較好。因此,,對一些關(guān)鍵的應(yīng)用軟件,,如瀏覽器、電子郵件,、媒體播放器等應(yīng)用軟件,,應(yīng)當(dāng)直接在Linux和MiniGUI之上開發(fā)。而mPeer解決方案則為Java程序提供了一個通用的平臺,,可運行各種符合規(guī)范的J2SE應(yīng)用程序,。利用Java開發(fā)應(yīng)用程序可帶來巨大的便利性,從人才,、社區(qū)資源,、開發(fā)工具等方面,都可獲得巨大的現(xiàn)有技術(shù)及資源的支持,。這兩種開發(fā)方式的結(jié)合使得開發(fā)靈活性增加的同時,,大大降低了難度,節(jié)省了資源,。
此外,,一直被廣大用戶所詬病的嵌入式Java的效率問題,在MiniGUI與mPeer的協(xié)同工作下也得到了解決,。本方案基于小巧靈活的 MiniGUI,,在其上實現(xiàn)的Java應(yīng)用軟件的性能,是完全可以和基于X Window,、Qt/Embedded的C/C++本地應(yīng)用軟件相媲美的,。本方案的整體架構(gòu)見圖1,。
本方案基于嵌入式Linux操作系統(tǒng),,在其上運行各種可能的應(yīng)用軟件,。它采用MiniGUI 3.0提供的多進(jìn)程支持,實現(xiàn)多進(jìn)程的圖形程序運行環(huán)境,,從而提高系統(tǒng)的整體穩(wěn)定性,,即使有單個應(yīng)用進(jìn)程的失效,也不會影響整體系統(tǒng)的運行,。本方案可以在線下載應(yīng)用軟件并運行,,且便于應(yīng)用軟件和系統(tǒng)的在線升級。依托MiniGUI 3.0在界面特效方面的強大功能,,還可以實現(xiàn)類似Apple iPhone/iTV的用戶界面特效,。
在瀏覽器方面,本方案包含一個全功能的Web瀏覽器產(chǎn)品mDolphin 2.0,。mDolphin是基于 WebKit瀏覽器核心開發(fā)的運行于Linux和MiniGUI之上的全功能瀏覽器,,支持流行的W3C標(biāo)準(zhǔn)(HTML 4.01、XHTML 1.0,、XML,、CSS 2.1/3.0、XSLT,、XPath,、DOM及 AJAX),支持Netscape 準(zhǔn)JavaScript 1.5,,遵循標(biāo)準(zhǔn)的 Netscape插件接口,,支持 HTTP 1.1、HTTPS,、Cookie和代理服務(wù)器
在J2SE實現(xiàn)方案方面,,mPeer可采用Dalvik/Kaffe/JamVM/Cacoo等開源的Java虛擬機,并提供符合Sun定義的Java CDC Personal Profile類庫,。開發(fā)者既可以將mPeer作為mDolphin的插件來運行嵌入到網(wǎng)頁中的Java Applet程序,,也可以獨立運行Java應(yīng)用程序。
基于Broadcom 7405 SoC,,采用本系統(tǒng)架構(gòu),,能夠?qū)崿F(xiàn)網(wǎng)絡(luò)電視方案。該系統(tǒng)的參數(shù)如下:TV 顯示輸出分辨率為720P,,利用了芯片的硬件加速,;芯片主頻為400MHz;存儲空間為128M NAND Flash,;內(nèi)存為256M RAM,。