JavaFX vlcj - lecture d'un DVD
Maven vlcj / javafx-vlcj
La deuxième dépendance sert à rendre compatible JavaFX et vlcj
<dependency>
<groupId>uk.co.caprica</groupId>
<artifactId>vlcj</artifactId>
<version>4.7.1</version>
</dependency>
<dependency>
<groupId>uk.co.caprica</groupId>
<artifactId>vlcj-javafx</artifactId>
<version>1.0.3</version>
</dependency>
Code Java - JavaFX et vlcj
import static uk.co.caprica.vlcj.javafx.videosurface.ImageViewVideoSurfaceFactory.videoSurfaceForImageView;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.image.ImageView;
import javafx.scene.layout.BorderPane;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
import uk.co.caprica.vlcj.factory.MediaPlayerFactory;
import uk.co.caprica.vlcj.player.embedded.EmbeddedMediaPlayer;
/**
* JavaFX App
*/
public class App extends Application {
/*
* Le lecteur de média. Pour éviter le garbage collector
*/
private EmbeddedMediaPlayer embeddedMediaPlayer;
public static void main(String[] args) {
launch(args);
}
@Override
public final void start(Stage primaryStage) throws Exception {
// L'élément racine dans la scène
BorderPane root = new BorderPane();
// La factory pour créer le lecteur de média
MediaPlayerFactory mediaPlayerFactory = new MediaPlayerFactory();
// Création du lecteur
embeddedMediaPlayer = mediaPlayerFactory.mediaPlayers().newEmbeddedMediaPlayer();
// La vue où va s'afficher la vidéo
ImageView videoImageView = new ImageView();
// La vidéo au centre de l'élément racine
root.setCenter(videoImageView);
// La vidéo s'affiche dans l'imageview
embeddedMediaPlayer.videoSurface().set(videoSurfaceForImageView(videoImageView));
Scene scene = new Scene(root, 800, 600, Color.BLACK);
primaryStage.setScene(scene);
primaryStage.show();
// Lecture du média DVD du lecteur E, titre #3
embeddedMediaPlayer.media().play("dvd:///e:#3");
}
}
Commentaires
Enregistrer un commentaire