是否可以在没有延迟的情况下开始使用 JavaFX MadiaPlayer

Is it possible to start playing with JavaFX MadiaPlayer without latency

我需要无延迟(小于 5-10 毫秒)一个接一个地播放 mp4 文件。我不想使用 vlc 或 xugler。

可能有一些解决方案可以让播放器在 play() 之后等待我的 trigger.notify() 并注入代码(但 MediaPlayer 是最终的):

Object trigger = new Object();
synchronized (trigger) {
    trigger.wait();
}

我需要 AudioClip 但对于 mp4 文件。

我重新测试了 MediaPlayer。现在我等待 READY 状态并开始播放。延迟为 3-12 毫秒。不是很好但是可以接受

new Thread(() -> {
    while (mediaPlayer.getStatus() != MediaPlayer.Status.READY) {
        try {
            Thread.sleep(5);
        } catch (InterruptedException ex) {
            System.out.println("Sleep was interrupted.");
        }
    }
    long before = System.currentTimeMillis();
    mediaPlayer.play();
    while (mediaPlayer.getStatus() != MediaPlayer.Status.PLAYING) {}
    long after = System.currentTimeMillis();
    System.out.println("latency " +(after - before));
}).start();