多媒體技術規範變天Flash Lite半路殺出 威脅MMS、JAVA地位

2004-09-30
MMS的出現開啟了手機趣味化且聲色兼俱的應用服務。JAVA語言的跨平台特性,減少了手機開發應用程式的時間...
MMS的出現開啟了手機趣味化且聲色兼俱的應用服務。VA語言的跨平台特性,減少了手機開發應用程式的時間。而近來Micro-media推出的Flash Lite為原本平靜的多媒體技術規範掀起一陣波闌。  

本篇文章將從MMS的規範應用、Java 程式在手機上面開發應用及Flash Lite Player的特性等幾個方向來探討多媒體手機技術及應用發展上的趨勢,藉此讓對手機功能有興趣者能進一步瞭解新一代手機的技術及應用。  

由最近各家廠商所推出的產品和各項報導分析顯示,隨著GSM升級到GPRS網路、行動數據服務由SMS往MMS發展及Java遊戲蓬勃發展。都明確的傳達多媒體手機的時代已經來臨。由市場提供的手機產品我們發現到現在多媒體手機的功能具備有彩色螢幕、MMS、數位相機、藍芽模組、Java Game、記憶卡及支援多媒體影音的播放等標準功能,更先進的多媒體手機更支援播放Flash數位內容的功能,也就是新增了Macromedia公司最近所強打的Flash Lite Player,意圖取代Java遊戲在手機上地位。  

多媒體簡訊服務MMS  

在新一代的手機功能支援項目中,總是能看到MMS。什麼是MMS呢?MMS是由Multimedia Messaging Service三個字簡寫而成的一種多媒體簡訊服務,也是最近相當風行的一種手機服務,MMS也可以說是SMS(Short Message Service)的加強版。就功能角度來看以往SMS技術僅能提供短訊及簡單圖樣的傳送,而透過MMS技術,使用者不但可以傳送一般的簡訊更可傳送結合彩色照片、動畫、圖形、影像與聲音的多媒體的簡訊,例如前一陣子密集廣告透過手機將照片傳送到另一個手機用戶,此部份的底層技術便是藉由MMS所達成的,接下來介紹透過MMS能達到的多媒體技術及應用。  

MMS的技術主要是透過已有傳輸技術協定與多媒體內容格式整合而成的,其內容呈的現控制是透過一種由W3C(World Wide Web Consortium)所訂定的標示語言SMIL (Synchronised Multimedia Integration Language)達成。SMIL是一種簡單易用的中性標示語言,其作用是使Web上的多媒體應用保持同步,SMIL其中所含的資訊包括告訴用戶端應該顯示那一個媒體串流(Steam)檔,並且在螢幕的什麼位置進行顯示。因此不論是文字、影像、聲音、動畫,都可以透過 SMIL的語言來控制播放時間及順序如圖1所示,MMS便是藉由此種規範來達到媒體訊息的傳送。  

由於MMS需支援傳送不同的多媒體格式,因此必須要有一規格來明定手機需支援的基本媒體格式。以下所列便是根據其規格所定的媒體格式:文字部分為 Unicode(US-ASCII, ISO-8859-1, UTF-8, Shift_JIS);圖片及動畫格式部分為JPEG、PNG、GIF87a、GIF89a;語音部分為AMR(支援narrow-band及wide- band speech 16kHz取樣頻率);同步及播放呈現控制部分為SMIL 2.0、SMIL Basic;有關聲音部分為Low Complexity MPEG-4 AAC;合成音樂MIDI(Musical Instrument Digital Interface);並且支援向量圖形的表示法:SVG及進階的視訊部分規範為H.263及MPEG4。表1為MMS所支援媒體格式之列表。  

在前一段我們了解到MMS支援多媒體檔案格式的多樣化及其功能的強大,現階段電信業者透過MMS所推出的相關應用有下載多媒體圖形、鈴聲、傳送電子賀卡、上傳下載MMS訊息、上傳圖片與聲音、訂閱多樣化的MMS電子報等。最近某些廠商更推出了支援MPEG4與H.263格式的手機,由於MPEG4具有高畫面、高品質、高壓縮率、低位元率(low bit-rate)的特色,使得此種影像格式很適合用在像手機這種有限頻寬的網路環境。雖然此種格式已經具有高壓縮率的特性,但一部完整的影片所需的容量畢竟不少,因此若要達到使的手機播放影片被廣泛的使用有兩個解決方案,一是增大手機可儲存容量,二是影音串流技術的實現。  

就現有硬體技術而言,增大手機容量並不符合成本,在短期之內一無經濟效益,因此大多採用影音串流的技術來達到影片播放的功能。影音串流技術的特點是具有邊下載邊播放的能力,播完的視訊資料便丟棄,所以不需要很大的儲存空間。由於MMS應用提供豐富的文字、影像、聲音等視聽娛樂資訊,隨著MMS的發展成熟、電信業者的推陳出新及手機內建模組功能的日漸強大,手機在多媒體的呈現及運用將更加的成熟。  

Java應用於多媒體手機  

提到Java在手機上面的應用,就一定會講到有關於J2ME及MIDP的技術,J2ME隨著許多的系統廠商(中華電信、台灣大哥大等)開始提供Java遊戲、軟體下載服務及手機製造業者(Nokia、Motorola等)在手機中內建支援Java程式的功能而漸漸受到重視,因此接下來筆者將介紹一J2ME 及MIDP的相關資訊。  

何謂J2ME呢?J2ME為Java 2 Micro Edition的縮寫,是由Sun Microsystems所推出,特別針對一般嵌入式系統進行程式開發的工具,他在Java的世界中扮演的地位,及核心資料類別函式庫的資源程度,可由圖2得知。  

J2ME的規格定義於JSR-68,此規格由Configuration、Profile、Optional Packages所組合而成的,其中Configuration定義了硬體所需具備的能力,例如需具備多快的網路、CPU等等,此部份可分成CLDC (Connected Limited Device Configuration)及CDC (Connected Device Configuration)。Profile根據不同裝置的差異性,定義出其所支援的APIs,我們常聽到的MIDP便是屬於此部分。Optional Packages則是根據不同廠商的機器所需的套件而有所不同。根據JTWI的規定現今平台至少必須支援CLDC1.0、MIDP2.0及WMA1.1。  

為何要採用J2ME呢?由於各家手機廠商各家廠商各有其自行開發的作業系統,在面對此種情況下若是每一家廠商皆有自己獨特的程式及函式庫的話,對於程式開發工程師來說,同樣的一個程式就需要學會使用不同的語言去完成。如此在不同的手機上面開發相同的應用程式,就要花許多額外的時間在參考規格書上。對於一般的應用程式而言,並不符合經濟效益。因此為了使原始碼的再利用性提高,我們大多利用Java語言跨平台的特性,減少開發應用程式的時間。  

MIDP(Mobile Information Device Profile )是一種有關行動裝置開發的規格,一個完整能在手機上面執行的MIDP程式需具備有R與D檔。  

R是用來包裝MIDlet Suite的檔案裡面所包含的就是主要程式的部分,D則是一段描述有關MIDlet Suite資訊的文字敘述,其中包括有MIDlet-Name、version、vender、Icon、Info-URL、Jar-URL、Jar- Size、MicroEdition-Profile、MicroEdition-Configuration等資料。  

具備了前面所述的兩個檔案之後,手機使用者便可透過OTA(Over The Air)或非OTA的方式來取得應用程式,OTA就是藉由無線網路將MIDP程式下載至裝置,非OTA則可透過手機傳輸線、藍芽、MMS或E-Mail的方式來取的所需的遊戲及應用程式。綜合上面所提的幾項技術我們可將手機開發應用流程示於圖3。  

雖然使用Java來開發手機上面的程式有其可移植性的優點,但Java長期受人質疑的缺點「執行速度」現今仍未得到很好的改善,不過多數的工程師認為這個問題會隨著硬體技術的進步而獲得更進一步的改善,屆時手機上面的遊戲及程式呈現的流暢性將不再是問題,Java在行動裝置上面的應用將更受到肯定。  

Flash Lite Player手機多媒體應用  

近來多媒體應用在手機方面最震撼的消息,應該是Macromedia公司於2004年7月15號宣佈正式推出Flash Lite 1.1。Flash Lite又稱Flash Player 6.0 r95  

是一種專門為行動電話而設的Flash Player程式其功能強度與Flash 4播放器相似,此次推出的Flash Lite 1.1是1.0的更新版。這次推出的新版本新增了ActionScript擴充功能、網路存取與連接能力、支援串流音訊格式、W3C的標準SVG-T 播放、可擴充的轉換引擎、靜態動態文字和使用者輸入、串流音效等功能。  

由於Flash在非行動平台的市場已經具有相當的佔有率,因此許多採用此技術的廠商及夥伴公司包括NTT DoCoMo、Sony Ericsson、德州儀器等業者都對此項技術有高度的評價。  

Flash Lite是專門針對行動電話開發的系統,所以必須考慮到行動裝置的執行效率無法像一般電腦平台上面可支援到Flash Player 7的所有功能,也因此Flash Lite 僅能使用 Macromedia 5物件和 Flash 4 ActionScript。以下將介紹Flash Lite的特性及應用:  

.ActionScript功能:可藉由新增的Script function取得手機裝態的資訊及控制手機,例如透過fscommand2此function由GetBatteryLevel取得電池電量資訊、由 GetDateYear、GetLocaleTime取得時間資訊、GetLanguage取得語言資訊、GetMaxVolumeLevel取得音量的資訊及傳送多媒体訊息(MMS)、撥號等功能。  

.SVG-T:Flash Lite不但可支援W3C的標準SVG Tiny,而且可啟用 MMS、WAP Browser及其他應用程式並可同時播放SVG-T及Flash動畫。  

.網路存取與連接能力:可以從 web 伺服器來載入資料和 SWF也可以進行動資料庫查詢。開發人員可藉由使用Script function,不定期的更新存放於手機上 Flash 的內容。  

.串流音訊格式:除了支援手機上常用的 MIDI 外還支援MIDI、MP3、PCM(WAV)、ADPCM,MFi以及SMAF等多種音效格式。而且根據手機硬體支援格式的狀態有不同的呈現方式,當硬體有支援時則 Flash Lite 會直接使用運用這些硬體來處理音訊的資料;如果手機並無此硬體支援時,則會建置此種格式所需的軟體。  

我們由前一段了解到Flash Lite的特性及功能的強大,接下來我要介紹開發Flash Lite Content所需的工具及環境。要開發Flash Lite Content首先必須要有Macromedia公司推出的Flash MX 2004 Professional版的編輯工具,在此版本中提供了開發不同公司行動裝置所需的樣板,此版本的環境僅支援到Flash Lite 1.0,因此內容開發者必須到Flash的相關網站下載Flash Lite 1.1的內容開發套件(CDK),內容包括技術參考以及供行動電話使用的Macromedia Flash內容的樣本程式碼。  

在開發套件中可以找到3個檔案Devices Msg.cfg、FlashLite1_1.dll、Flash Lite1_1.xml,使用者必須將DevicesMsg.cfg放到Documents and Settings\ user name\Local Settings\Application Data\Macromedia\Flash MX 2004 \language\ Configuration\的資料夾底下、FlashLite1_1.dll及FlashLite1_1.xml放到Program Files\Macromedia\Flash MX 2004\language\ Configuration\Players底下,在開啟Flash開發工具就會多出可以開發FlashLite1.1的選項。  

現今市場手機上面大多的遊戲程式皆是由Java開發而成的,因此筆者就Java與Flash在手機平台上面作一些比較。  

Flash和Java相比,Flash的檔案較小、有良好GUI的開發環境(Flash MX 2004)、開發時間較短、更佳的跨平台特性、不需針對螢幕大小的手機裝置製作不同的程式,此外由於Flash Lite是藉由一種script language開發,Java程式是藉由Java程式語言開發,相較之下Flash Lite即使非專業程式設計師,也可以設計出效果不錯的遊戲內容,所以入門門檻較低。  

由Flash Lite所訂定的功能規格我們可以發現到Flash Lite希望取代MMS及部分Java game的市場,究竟新一代多媒體手機內容的市場會不會被Flash Lite所稱霸呢,我們拭目以待吧。  

(本文作者目前任職於資策會)  

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!