MediaFrame是由純Java實現的流媒體平台,內建MPEG解碼器,相容MPEG-1及MPEG-4標準,它能夠將指定的MPEG媒體資源在對應Applet中播放,並且不需要其它本地資源與之配合,音頻支援部分包括AAC與MP3。
項目地址:http://mediaframe.org/
除非你是想用Java製作專業的影音工具,抑或對流媒體格式或大小存在特殊要求。否則的話,相對陷入萬年不更新境界的JMF而言,小巧通用的MediaFrame,就明顯可愛得多,無論在何時何地,只要你的JRE能正常運行,那麼MediaFrame也同樣可以正常運轉起來。
很久以前的MediaFrame樣本,似乎已經
都
掛了……:
MediaFrame運行:
從MediaFrame提供的示範檔案上看,似乎此項目的構建本意是作為電影、電視的前期宣傳之用,不過嘛……由於大家都知道的某個傢伙的存在,此項功能幾乎無價值……
之所以突然說起了MediaFrame組件,是由於暫時沒時間寫LGame遊戲組件部分,突然想看看有沒有辦法讓LGame可使用視訊的播放(我是既想播放視頻,又不想動用jmf抑或jni的傢伙),結果在Sourceforge上找了半天把MediaFrame搜了出來。
事實上,MediaFrame項目近兩年已經停止更新,但它提供的純Java版MPEG解碼器卻可以利用到其它領域中去,比如偶的LGame……也算死得其所了……
剛剛偶嘗試了一下在LGame內建MediaFrame,由於運作機理類似,結果出乎預料的順利,很容易就改寫成了LGame組件,運行效果也與標準播放器並無二致,放大縮小也很正常。
運行結果如:
PS:此項功能要在0.2.5版發布時才能提供。
我過一段可能會再加一個FLV解碼器和MPEG解碼器整合在一起,這樣使用者選擇的餘地更大些。另外MediaFrame解碼時會佔據一定空間,造成其可讀取的檔案大小事實上受到限制(過大會溢出),偶以後準備修改成寫硬碟緩衝。事實上這都應該是Sun提供的,JMF也不更新,影音解碼器也沒人弄(有著作權問題的你不做,沒著作權問題的哥幾個倒是添點啊……),什麼都沒有光讓別人空手玩,Java案頭部分哪輩子才能發展起來……
話說那位大俠用純Java寫過RMVB解碼器的,拿出來炫耀一下啊。剛下ffmpeg看了一眼RV10-40的解碼,實在不成就慢慢翻譯到Java或者以外掛程式形式引入jffmpeg(這玩意是無恥的jni實現,直調ffmpeg……)