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);  
    }  
      
}  

 

热门文章

优秀文章