JavaFX MediaPlayer播放音频
我们可以使用 JavaFX Media API加载扩展名为.mp3、.wav和.aifff的音频文件。我们还可以播放 HTTP 直播格式的音频。它是 JavaFX 8 中引入的新功能,也称为 HLS。
在 JavaFX 中播放音频文件很简单。为此,我们需要通过在其构造函数中传递音频文件路径来实例化javafx.scene.media.Media类。播放音频文件所需遵循的步骤如下所述。
1、通过在其构造函数中传递音频文件的位置来实例化javafx.scene.media.Media类。为此,请使用以下代码行。
Media media = new Media("http://path/file_name.mp3");
2、将 Media 类对象传递给javafx.scene.media.MediaPlayer对象的新实例
Mediaplayer mediaPlayer = new MediaPlayer(media);
3、当 onReady 事件被触发时调用 MediaPlayer 对象的 play() 方法
MediaPlayer.setAutoPlay(true);
媒体文件可以位于 Web 服务器或本地文件系统上。SetAutoPlay() 方法是使用 lambda 表达式设置 setOnReady() 事件处理程序来处理事件的捷径。
播放音频的例子
在下面的示例中,我们的计算机中位于“/home/yiidian/Downloads/test.mp3”的音频文件在执行此应用程序时播放。
package com.yiidian;
import javafx.application.Application;
import javafx.scene.media.Media;
import javafx.scene.media.MediaPlayer;
import javafx.stage.Stage;
public class JavaFX_Media extends Application
{
@Override
public void start (Stage primaryStage) throws Exception {
//Initialising path of the media file, replace this with your file path
String path = "/home/yiidian/Downloads/test.mp3";
//Instantiating Media class
Media media = new Media(new File(path).toURI().toString());
//Instantiating MediaPlayer class
MediaPlayer mediaPlayer = new MediaPlayer(media);
//by setting this property to true, the audio will be played
mediaPlayer.setAutoPlay(true);
primaryStage.setTitle("一点教程网:Playing Audio");
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
热门文章
优秀文章