我下载JMF MP3 Plugin在我的java程序中播放mp3文件。我在我的netbeans项目库中加入了mp3plugin.jar
和JDK。但我仍然无法播放mp3文件。
当我运行我的代码时,我得到以下异常:
Exception in thread "main" javax.sound.sampled.LineUnavailableException: line with format MPEG1L3 44100.0 Hz, unknown bits per sample, stereo, unknown frame size, unknown frame rate, not supported.
at com.sun.media.sound.DirectAudioDevice$DirectDL.implOpen(DirectAudioDevice.java:541)
at com.sun.media.sound.DirectAudioDevice$DirectClip.implOpen(DirectAudioDevice.java:1341)
at com.sun.media.sound.AbstractDataLine.open(AbstractDataLine.java:124)
at com.sun.media.sound.DirectAudioDevice$DirectClip.open(DirectAudioDevice.java:1121)
at com.sun.media.sound.DirectAudioDevice$DirectClip.open(DirectAudioDevice.java:1211)
at mp3.MP3.main(MP3.java:25)
Java Result: 1
import javax.sound.sampled.*;
import java.io.*;
public class MP3 {
static Thread th;
public static void main(String[] args) throws Exception {
Clip clip = AudioSystem.getClip();
AudioInputStream ais = AudioSystem.getAudioInputStream(new File("mysong.mp3"));
clip.open(ais);
clip.loop(0);
long tf = (long)(clip.getFrameLength() * clip.getFormat().getFrameRate());
Thread.sleep( ( tf* 1000 ));
}
}
为什么我会收到这些例外情况?代码是否有问题。
答案 0 :(得分:0)
我引用了这个链接作为例子。
http://blogs.oracle.com/kashmir/entry/java_sound_api_2_mp3
基本上MP3插件可以读取MP3,但不能播放。为了播放它们,您必须将它们在程序中转换为实际可以播放的文件类型,如PCM。