JavaFX Mediaplayer播放视频

在 JavaFX 中播放视频非常简单。我们需要使用与播放音频文件相同的 API。在播放视频的情况下,我们需要使用 MediaView 节点将视频显示到场景中。

为此,我们需要通过将 Mediaplayer 对象传递到其构造函数来实例化 MediaView 类。由于 MediaView 是一个 JavaFX 节点,我们将能够对其应用效果。

在本教程的这一部分中,我们将讨论播放视频媒体文件所涉及的步骤以及与此相关的一些示例。

在 JavaFX 中播放视频文件的步骤

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

4、实例化 MediaView 类并将 Mediaplayer 对象传递给其构造函数

MediaView mediaView = new MediaView (mediaPlayer) 

5、将 MediaView 节点添加到 Group 并配置 Scene

Group root = new Group();  
root.getChildren().add(mediaView)  
Scene scene = new Scene(root,600,400);  
primaryStage.setTitle("Playing Video");  
primaryStage.show();  

Mediaplayer 播放视频的例子

package com.yiidian;

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.media.Media;
import javafx.scene.media.MediaPlayer;
import javafx.scene.media.MediaView;
import javafx.stage.Stage;

import java.io.File;

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.mp4";  
          
        //Instantiating Media class  
        Media media = new Media(new File(path).toURI().toString());  
          
        //Instantiating MediaPlayer class   
        MediaPlayer mediaPlayer = new MediaPlayer(media);  
          
        //Instantiating MediaView class   
        MediaView mediaView = new MediaView(mediaPlayer);  
          
        //by setting this property to true, the Video will be played   
        mediaPlayer.setAutoPlay(true);  
          
        //setting group and scene   
        Group root = new Group();  
        root.getChildren().add(mediaView);  
        Scene scene = new Scene(root,500,400);  
        primaryStage.setScene(scene);  
        primaryStage.setTitle("一点教程网:Playing video");  
        primaryStage.show();  
    }  
    public static void main(String[] args) {  
        launch(args);  
    }  
      
}  

 

热门文章

优秀文章