media-player - 在 JavaFX 中播放连续视频

标签 media-player javafx-2

我想播放硬盘中存在的两个(或更多)视频,如何更新媒体对象以便媒体播放器自动转到下一个视频。

最佳答案

现在我无法测试它,但我认为它应该有效:

public MediaView createMediaView(Collection<String> urls){
    MediaView mediaView = new MediaView();
    initMediaPlayer(mediaView, urls.iterator());
    return mediaView;
}

private void initMediaPlayer(
          final MediaView mediaView, 
          final Iterator<String> urls
){
    if (urls.hasNext()){
        MediaPlayer mediaPlayer = new MediaPlayer(new Media(urls.next()));
        mediaPlayer.setAutoPlay(true);
        mediaPlayer.setOnEndOfMedia(new Runnable() {
            @Override public void run() {
                initMediaPlayer(mediaView, urls);
            }
        });
        mediaView.setMediaPlayer(mediaPlayer);
    } 
}

关于media-player - 在 JavaFX 中播放连续视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12482129/

相关文章:

layout - TableView 的列数比指定的多

java - 如何在 Mac 上使用 JavaFX 将图像保存到文件系统?

android - 流媒体源上的 MediaMetadataRetriever

android - 在 Marshmallow (Android 6) 上使用 TTS 中的声音文件因权限问题而失败

javascript - 文件的 URL 强制下载,如何禁用下载并将该文件存储到客户端的 JavaScript 变量中?

javafx-2 - 在 GridPane 中剪辑一个 HBox

android - 如何使用媒体播放器播放和暂停音频?

codenameone - Arch Linux 上的一个媒体文件 I/O 异常

java - 如何获取并选择 JavaFX 中索引不可见的 treeItem?

javafx-2 - 将对象从一个场景传递到另一个场景