【发布时间】:2015-06-08 17:43:41
【问题描述】:
我遵循了这个教程:http://what-when-how.com/javafx-2/playing-audio-using-the-media-classes-javafx-2-part-1/
package audioVideo;
import java.net.URL;
import javafx.application.Application;
import javafx.scene.media.*;
import javafx.stage.*;
public class AudioPlayer1 extends Application
{
public static void main(String args[])
{
launch(args);
}
@Override
public void start(Stage primaryStage)
{
URL resource = getClass().getResource("resources/sample.mp3");
Media media = new Media(resource.toString());
MediaPlayer mediaPlayer = new MediaPlayer(media);
mediaPlayer.play();
primaryStage.setTitle("Audio Player 1");
primaryStage.setWidth(200);
primaryStage.setHeight(200);
primaryStage.show();
}
}
我在与相应的 .class 文件相同的目录中有相应的资源文件夹,但我仍然无法播放音频。 mp3 文件与教程中的文件不同,但我也有一个 .wav 等价文件,发现 JavaFX 可以开箱即用地播放 *.wav 文件,但不能播放 mp3 文件。怎么回事?
我通过 Eclipse 使用 Ubuntu 15.04 64 位。这不可能是资源问题,因为 .wav 文件与 .mp3 文件位于同一文件夹中,但前者可以播放,而后者不能。我是否需要某些依赖项才能正确播放 mp3 文件?我可以直接从 Ubuntu 播放 mp3 文件。
【问题讨论】:
-
你能直接从 Ubuntu 播放 mp3 吗? (您需要“受限”代码才能播放 mp3;所以当 ubuntu 不播放它们时……您需要在使用 java 之前添加相应的包)
-
是的,我可以直接从 Ubuntu 播放 mp3 文件。我将使用该信息更新问题。
-
那么,如果这不是问题,那么您的“它不工作”实际上是什么样子的?是否有异常,eclipse控制台中的消息,???
-
你能上传一个示例 .mp3 给我试用吗?
-
Ubuntu 15.x 还不是certified system configuration,也许它会工作,也许它不会(14.x 已通过认证)。您应该根据认证要求检查您的系统,并确保您安装了正确的 glib 和 libav 库。您应该在问题中包含异常跟踪。您还应该包括media error handling code。