利用JAVA語言實現支持視頻點播的WEB服務器(5)_Windows教程
中間件是一種將應用程序與低層的操作系統、硬件細節隔離開來的軟件環境,這種分層的思想在現代系統設計中十分常見,如大名鼎鼎的TCP/IP協議。中間件通常由各種虛擬機來構成,如HTML虛擬機、JavaScript虛擬機、Java虛擬機等。
一個完整的數字機頂盒由硬件平臺和軟件系統組成,可以將其分為4層,從底向上分別為硬件、底層軟件、中間件、應用軟件。硬件提供機頂盒的硬件平臺;底層軟件提供操作系統內核以及各種硬件驅動程序;應用軟件包括本機存儲的應用和可下載的應用;中間件將應用軟件與依賴于硬件的底層軟件分隔開來,使應用不依賴于具體的硬件平臺。這樣用戶可以在任何廠家的硬件平臺上進行應用軟件開發,和應用軟件下載。不必介意任何低層的有關信息。保證了機頂盒的開發專業化。目前成熟的用于機頂盒的商用中間件產品有Opentv的EN2、Liberate的TV Navigator for DTV、Enreach的EnreachTV for DTV、Canel+ 的Mediahighway和Intellibyte的IB EPG、IB SI Manager、IB Browser等,這些產品在市場上都占有一席之地,但彼此并不兼容。
標準組織已經認識到已有中間件產品兼容性差這個事實,并且開始著手建立開放的中間件標準。DVB提出了基于Java虛擬機的中間件標準DVB-MHP(多媒體家庭平臺);ATSC成立了T3/S17技術專家小組委員會,致力于機頂盒軟件環境的定義,該軟件環境稱為DTV應用軟件環境(DASE)。ATVEF(先進電視發展論壇)也創建了一種稱為Advanced Television Enhancement Forum Specification for Interactive Television 的規范。
其實,任何一種分層結構都不是要求完全一絲不差的按照其結構,在中間件中我們認為JAVA虛擬機較有發展前途。因為首先,JAVA的設計初衷就是為信息家電開發提供一種簡單,健壯的嵌入式語言。正是基于這樣一種設計目標,JAVA具有小型化的能力可以在簡單的環境下運行。而價格方面的原因使機頂盒不可能,也不必要擁有同一時代的標準配置的臺式機的功能,這種相對簡單的硬件環境是可以運行JAVA虛擬機的。應用JAVA虛擬機的另一個原因是,現在出現了專門運行JAVA語言的JAVA芯片如果應用這種芯片作為機頂盒的CPU,則可以使用專門的JAVAOS作為操作系統,利用JAVA語言的可移植性在臺式機上進行應用層開發,借鑒臺式機的調試開發經驗和工具。
(四)傳輸壓縮方式
在視頻點播,網上視頻觀看中不可避免的要與數據壓縮打交道,如何將視頻數據,音頻數據在一定的失真范圍內用最小的數據量傳輸是數據壓縮要研究的一個重要的課題。數字多媒體技術的發展,突破了傳統的模擬化圖象的應用,圖象的采集以及存儲、處理、顯示等數字化的發展,其使我們設計的可行性大大提高。數據壓縮及編碼技術是設計中向數字機頂盒傳輸數據時的關鍵技術。圖象壓縮編碼從開始系統研究至今已有近50年的歷史。1988年,CCITT(現ITU-T)制定了可視電話/會議電視的H.261建議是極具代表性的標準,后來的MPEG-1、MPEG-2、H.263等圖象壓縮標準都是以它為基礎的。聲音壓縮編碼的標準也很多,如ITU-T制定的G.711、G.722、G.728、G.723等。限于筆者的水平我們無法對各種壓縮技術進行評價,所以在這里只作簡單的介紹。
視頻壓縮技術中數字圖象的壓縮是多媒體通信的關鍵技術,"壓縮比"是評價圖象壓縮方法性能的重要參數之一(也可按每象素多少比特反映壓縮特性),圖象壓縮比反應了圖象壓縮的困難性和可能程度,ITU-T制訂的各種標準壓縮比都不同。一般來說,壓縮比越大,算法越復雜,實時壓縮解壓縮的困難程度越大,要求的硬件環境也越高。對于可視電話,若原圖象格式采用QCIF(176×144),則原始圖象有4.5Mb/s的數據量,若最后用28.8kb/S的MODEM在PSTN上傳輸,則要提供150多倍的壓縮,遵循ITU-T和H.263標準可實現此壓縮,另外,H.261和MPEG-1也具有較低的碼率,適合于在現有網絡上傳輸視頻。MPEG-1廣泛用于VIDEO-CD的播放,H.261可應用于N-ISDN可視電話、會議電視、遠程醫療、遠程教學等各個方面。MPEG-2具有可分級性、可擴展性和互操作性,且易于與ATM、計算機網絡聯結等一系列高性能,但其碼率仍高達4~20Mbps,其主要目標是針對廣播電視演播室圖象質量和HDTV,現也應用于VOD和DVD的制作。此外,具有高級交互功能、更高圖象聲音質量和更大靈活性的MPEG-4標準,國際上正在研究制訂之中。
- 相關鏈接:
- 教程說明:
Windows教程-利用JAVA語言實現支持視頻點播的WEB服務器(5)。