JavaFX播放音频

我们可以使用JavaFX Media API加载扩展名为.mp3, .wav和.aifff的音频文件。我们还可以以HTTP实时流格式播放音频。它是JavaFX 8中引入的新功能, 也称为HLS。
【JavaFX播放音频】用JavaFX播放音频文件很简单。为此, 我们需要通过在其构造函数中传递音频文件路径来实例化javafx.scene.media.Media类。下面介绍了播放音频文件所需遵循的步骤。
通过在音频文件的构造函数中传递音频文件的位置来实例化javafx.scene.media.Media类。为此, 请使用以下代码行。

Media media = new Media("http://path/file_name.mp3");

将Media类对象传递给javafx.scene.media.MediaPlayer对象的新实例。
Mediaplayer mediaPlayer = new MediaPlayer(media);

触发onReady事件时, 调用MediaPlayer对象的play()方法。
MediaPlayer.setAutoPlay(true);

媒体文件可以位于Web服务器上或本地文件系统上。 SetAutoPlay()方法是使用lambda表达式设置setOnReady()事件处理程序以处理事件的捷径。

在以下示例中, 执行此应用程序后, 将播放我们计算机中“ /home/srcmini/Downloads/test.mp3”中的音频文件。
package application; import java.io.File; import javafx.application.Application; import javafx.scene.Group; import javafx.scene.media.Media; import javafx.scene.media.MediaPlayer; import javafx.scene.media.MediaView; import javafx.stage.Stage; public class JavaFX_Media Example extends Application{ @Override public void start (Stage primaryStage) throws Exception {// TODO Auto-generated method stub//Initialising path of the media file, replace this with your file path String path = "/home/srcmini/Downloads/test.mp3"; //Instantiating Media classMedia 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); } }

    推荐阅读