Javase的多媒體功能很弱,因此有一個專門處理多媒體的插件叫JMF。可是JMF也不是很好用,原版的JMF就不能播放mp3(官網說能播可是我試了不行),因而還要裝jmf的mp3plugin。php
JMF下載網址:http://www.oracle.com/technetwork/java/javase/download-142937.htmlhtml
mp3plugin下載網址:http://forum.ubuntu.org.cn/viewtopic.php?f=70&t=370316 (先在這個帖子裏找)
java
因爲要在不一樣平臺上調試,因此我下載的JMF是跨平臺版。shell
安裝步驟:
ubuntu
1.安裝:oracle
將下載的jmf壓縮包解壓到任意文件夾,我用的Linux解壓到了/usr/local/ 下。將mp3plugin解壓的jar包也先放到JMF目錄的lib目錄中。eclipse
2.添加環境變量:fetch
在環境變量中添加JMF_HOME,並添加相應目錄到PATH和CLASSPATH:ui
export JMF_HOME=/usr/local/JMF-2.1.1e export PATH=$JMF_HOME/bin: ...省略... export CLASSPATH=.:$JMF_HOME/lib/*.jar: ...省略...3.將jar包複製到JRE的lib/ext/目錄中:插件
將JMF的lib目錄中的jar包都複製到JDK的jre/lib/ext/目錄中去。(不知道有啥做用,反正照作了)
4.註冊mp3plugin插件:
在JMF目錄的bin目錄中,有個jmfregistry,運行之,在plugin選項卡的Codec選項卡中的左邊的文本框中,輸入com.sun.media.codec.audio.mp3.JavaDecoder,點擊中間的add按鈕,這樣就在列表中註冊了mp3的插件,而後按如下commit(聽說要按一下)。
5.導入Java項目:
註冊完以後,在JMF的lib文件夾中,有個jmf.properties文件,將此文件和其餘jar包都添加到eclipse項目的lib目錄中,build好path。
至此一個能播放mp3的JMF安裝完畢。
最簡單的一個無界面mp3播放程序:
import java.io.File; import java.io.IOException; import javax.media.Manager; import javax.media.NoPlayerException; import javax.media.Player; public class GetMediaPlayer { public static void main(String[] args){ String pathStr = "本地mp3文件路徑"; //關於路徑,不一樣系統上獲得的不同,建議先打印一下看看File f是什麼路徑,再更改。 File f = new File("",pathStr); System.out.println(f); //打印一下文件的路徑 Player player = null; try { player = Manager.createPlayer(f.toURI().toURL()); } catch (NoPlayerException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } player.prefetch(); player.start(); } }
但願你不會看到unable to handle format: mpeglayer3 ... 這類的錯誤提示。
其餘使用方法請看官網文檔及API。