基于MiniGUI/mDolphin/mPeer技術(shù)的網(wǎng)絡(luò)電視方案
網(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)頁瀏覽器,有了它用戶才能夠進行站點瀏覽、下載等操作。本方案中采用的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ā)者既可以進行基于MiniGUI的Linux程序開發(fā)(C/C++),也可以使用Java。
基于MiniGUI來開發(fā)應(yīng)用軟件的難度相對較高,開發(fā)者不但需要Linux程序開發(fā),更要精通MiniGUI API才能夠進行開發(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提供的多進程支持,實現(xiàn)多進程的圖形程序運行環(huán)境,從而提高系統(tǒng)的整體穩(wěn)定性,即使有單個應(yīng)用進程的失效,也不會影響整體系統(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。