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; public class RT18224 extends Application { private Stage stage = null; private static final String[] MEDIA_URLS = {"file:///c:/media/RT-18224/1.flv", "file:///c:/media/RT-18224/2.flv", "file:///c:/media/RT-18224/3.flv"}; private int index = 0; private MediaView mediaView = new MediaView(); private MediaPlayer mediaPlayer = null; @Override public void start(Stage stage) { this.stage = stage; stage.setTitle("RT-18224"); Group root = new Group(); Scene scene = new Scene(root, 360, 243); root.getChildren().add(mediaView); stage.setScene(scene); stage.show(); playVideo(MEDIA_URLS[index]); } private void playVideo(String url) { stage.setTitle("RT-18224 - " + url); Media media = new Media(url); mediaPlayer = new MediaPlayer(media); mediaView.setMediaPlayer(mediaPlayer); mediaPlayer.setOnEndOfMedia(new Runnable() { @Override public void run() { mediaPlayer.stop(); index++; if (index < MEDIA_URLS.length) { playVideo(MEDIA_URLS[index]); } else { stage.setTitle("RT-18224 - done"); mediaView.setMediaPlayer(null); mediaPlayer = null; System.gc(); } } }); mediaPlayer.play(); } public static void main(String[] args) { Application.launch(args); } }