JavaFX播放mp3
当我运行我的方法时,我得到一个JavaFX播放mp3,java,javafx,mp3,Java,Javafx,Mp3,当我运行我的方法时,我得到一个MediaException。我使用playSound(“src/assets/timeup.mp3”)调用该方法 日志: src/assets/timeup.mp3 文件:/media/chris/1%20TB%20Data/Eclipse/workspace/dregtimer/src/assets/timeup.mp3 线程“main”media异常:未知:com.sun.media.jfxmedia.media异常:无法创建播放机!:com.sun.medi
MediaException
。我使用playSound(“src/assets/timeup.mp3”)调用该方法代码>
日志:
src/assets/timeup.mp3
文件:/media/chris/1%20TB%20Data/Eclipse/workspace/dregtimer/src/assets/timeup.mp3
线程“main”media异常:未知:com.sun.media.jfxmedia.media异常:无法创建播放机!:com.sun.media.jfxmedia.media异常:无法创建播放机!
位于javafx.scene.media.MediaException.exceptionToMediaException(MediaException.java:146)
位于javafx.scene.media.MediaPlayer.init(MediaPlayer.java:511)
位于javafx.scene.media.MediaPlayer。(MediaPlayer.java:414)
at timer.timer.playSound(timer.java:53)
timer.timer.(timer.java:58)
at timer.timer.main(timer.java:39)
原因:com.sun.media.jfxmedia.media异常:无法创建播放机!
在com.sun.media.jfxmediainpl.NativeMediaManager.getPlayer上(NativeMediaManager.java:222)
在com.sun.media.jfxmedia.MediaManager.getPlayer上(MediaManager.java:104)
位于javafx.scene.media.MediaPlayer.init(MediaPlayer.java:467)
... 4更多
我的项目位于外部驱动器上,我正在使用符号链接将其链接到主驱动器。我正在主驱动器上运行Eclipse。不过,我不认为这会导致任何问题。如果您使用的是linux(看起来您来自stacktrace)。您需要安装libavformat53和libavcodec53,javafx的MediaPlayer才能正常工作,否则会出现错误 戴软呢帽你是怎么做到的?(似乎你现在可以回答你自己的问题:)戴软呢帽有点棘手。我需要手动查找并安装libavcodec53及其所有依赖关系RPM,因为以前版本的libav库不再包含在官方存储库中。
private void playSound(String path) {
System.out.println(path);
Media hit = new Media(new File(path).toURI().toString());
System.out.println(hit.getSource());
MediaPlayer mediaPlayer = new MediaPlayer(hit);
mediaPlayer.play();
}
src/assets/timeup.mp3
file:/media/chris/1%20TB%20Data/Eclipse/workspace/DrEggTimer/src/assets/timeup.mp3
Exception in thread "main" MediaException: UNKNOWN : com.sun.media.jfxmedia.MediaException: Could not create player! : com.sun.media.jfxmedia.MediaException: Could not create player!
at javafx.scene.media.MediaException.exceptionToMediaException(MediaException.java:146)
at javafx.scene.media.MediaPlayer.init(MediaPlayer.java:511)
at javafx.scene.media.MediaPlayer.<init>(MediaPlayer.java:414)
at timer.Timer.playSound(Timer.java:53)
at timer.Timer.<init>(Timer.java:58)
at timer.Timer.main(Timer.java:39)
Caused by: com.sun.media.jfxmedia.MediaException: Could not create player!
at com.sun.media.jfxmediaimpl.NativeMediaManager.getPlayer(NativeMediaManager.java:222)
at com.sun.media.jfxmedia.MediaManager.getPlayer(MediaManager.java:104)
at javafx.scene.media.MediaPlayer.init(MediaPlayer.java:467)
... 4 more