diff --git a/ui/src/main/java/dev/quoije/umd/ui/PlayerApp.java b/ui/src/main/java/dev/quoije/umd/ui/PlayerApp.java index e3d1951..19e49b3 100644 --- a/ui/src/main/java/dev/quoije/umd/ui/PlayerApp.java +++ b/ui/src/main/java/dev/quoije/umd/ui/PlayerApp.java @@ -200,6 +200,12 @@ public final class PlayerApp extends Application { try (UmdIsoReader iso = new UmdIsoReader(Path.of(isoPath)); PlaybackEngine engine = PlaybackEngine.open(iso, streamName, 0)) { + // Each stream has its own PTS timeline, so re-anchor the master + // clock to this stream's first audio chunk. + clockStartPts = -1; + clockStartNanos = -1; + clockOffsetNanos = 0; + Thread audio = startAudio(engine); awaitClock(); long basePts = clockStartPts;