[英]JavaFX play mp3
當我運行我的方法時,我得到一個MediaException
。 我用playSound("src/assets/timeup.mp3");
調用該方法playSound("src/assets/timeup.mp3");
。
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
我的項目在外部驅動器上,並通過符號鏈接將其鏈接到主驅動器。 我在主驅動器上運行Eclipse。 我認為這不會引起任何問題。
如果您使用的是Linux(看起來好像是您的stacktrace)。 您需要安裝libavformat53和libavcodec53才能使javafx的MediaPlayer正常工作,否則會出現該錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.