我有这个代码:
package test;
import java.io.File;
import javax.media.Format;
import javax.media.Manager;
import javax.media.MediaLocator;
import javax.media.Player;
import javax.media.PlugInManager;
import javax.media.format.AudioFormat;
public class AudioTest {
public static void main(String[] args) {
Format input1 = new AudioFormat(AudioFormat.MPEGLAYER3);
Format input2 = new AudioFormat(AudioFormat.MPEG);
Format output = new AudioFormat(AudioFormat.LINEAR);
PlugInManager.addPlugIn(
"com.sun.media.codec.audio.mp3.JavaDecoder",
new Format[]{input1, input2},
new Format[]{output},
PlugInManager.CODEC
);
try{
Player player = Manager.createPlayer(new MediaLocator(new File("1.mp3").toURI().toURL()));
player.realize();
player.start();
}
catch(Exception ex){
ex.printStackTrace();
}
}
}
我正在尝试播放一个mp3文件,mp3plugin被添加到项目库以及jmfjar中。控制台上没有错误,但听不到声音。
文件没有播放。.wav文件播放良好。
知道吗?
JMF是一个糟糕的选项。这个项目很久以前就被放弃了。我在这里回答了一个类似的问题:
Java-尝试使用mp3plugin播放mp3文件时出错
它可能对你有用-我使用Java声音
以下是我播放音乐所需的全部内容。
public static void main(String args[]) throws NoPlayerException, CannotRealizeException, IOException {
MediaLocator ml = new MediaLocator((new File("roar_of_future.mp3").toURL()));
Player player = Manager.createRealizedPlayer(ml);
player.start();
}
因此,请确保mp3plugin.jar在类路径中,并且您的javasdk是Java 8(32位)或7(32位。