1. 程式人生 > >純Java流媒體平臺MediaFrame

純Java流媒體平臺MediaFrame

               


MediaFrame是由純Java實現的流媒體平臺,內建MPEG解碼器,相容MPEG-1及MPEG-4標準,它能夠將指定的MPEG媒體資源在對應Applet中播放,並且不需要其它本地資源與之配合,音訊支援部分包括AAC與MP3。



除非你是想用Java製作專業的影音工具,抑或對流媒體格式或大小存在特殊要求。否則的話,相對陷入萬年不更新境界的JMF而言,小巧通用的MediaFrame,就明顯可愛得多,無論在何時何地,只要你的JRE能正常執行,那麼MediaFrame也同樣可以正常運轉起來。

很久以前的MediaFrame示例,似乎已經掛了……:

00

MediaFrame執行效果圖:

00

從MediaFrame提供的演示檔案上看,似乎此專案的構建本意是作為電影、電視的前期宣傳之用,不過嘛……由於大家都知道的某個傢伙的存在,此項功能幾乎無價值……

之所以突然說起了MediaFrame元件,是由於暫時沒時間寫LGame遊戲元件部分,突然想看看有沒有辦法讓LGame支援視訊的播放(我是既想播放視訊,又不想動用jmf抑或jni的傢伙),結果在Sourceforge上找了半天把MediaFrame搜了出來。

事實上,MediaFrame專案近兩年已經停止更新,但它提供的純Java版MPEG解碼器卻可以利用到其它領域中去,比如偶的LGame……也算死得其所了……

剛剛偶嘗試了一下在LGame內建MediaFrame,由於運作機理類似,結果出乎預料的順利,很容易就改寫成了LGame元件,執行效果也與標準播放器並無二致,放大縮小也很正常。

執行結果如下圖:

00

00

00

PS:此項功能要在0.2.5版釋出時才能提供。

我過一段可能會再加一個FLV解碼器和MPEG解碼器整合在一起,這樣使用者選擇的餘地更大些。另外MediaFrame解碼時會佔據一定空間,造成其可讀取的檔案大小事實上受到限制(過大會溢位),偶以後準備修改成寫硬碟快取。事實上這都應該是Sun提供的,JMF也不更新,影音解碼器也沒人弄(有版權問題的你不做,沒版權問題的哥幾個倒是添點啊……),什麼都沒有光讓別人空手玩,Java桌面部分哪輩子才能發展起來……

話說那位大俠用純Java寫過RMVB解碼器的,拿出來炫耀一下啊。剛下ffmpeg看了一眼RV10-40的解碼,實在不成就慢慢翻譯到Java或者以外掛形式引入jffmpeg(這玩意是無恥的jni實現,直調ffmpeg……)