From d9c9c7c8d81608c57b8d0ddf2fd92e3666833f9b Mon Sep 17 00:00:00 2001 From: Tri Vo Khac Date: Wed, 11 Nov 2026 20:34:57 +0700 Subject: [PATCH] fix(mpv): avoid render stalls from video timing offset --- src/mpv/mpvitem.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/mpv/mpvitem.cpp b/src/mpv/mpvitem.cpp index ab757bb..6aaf7d0 100644 --- a/src/mpv/mpvitem.cpp +++ b/src/mpv/mpvitem.cpp @@ -33,6 +33,10 @@ MpvItem::MpvItem(QQuickItem *parent) // Leave the player on the last frame at end of file instead of unloading it. setPropertyAsync(QStringLiteral("keep-open"), QStringLiteral("yes")); setPropertyAsync(QStringLiteral("hwdec"), QStringLiteral("auto-safe")); + // mpvqt renders with the default blocking timing, so each new video frame stalls + // the Qt Quick render thread for up to this offset (50 ms) and animations drawn + // over a playing video stutter. Hand frames over at their display time instead. + setPropertyAsync(QStringLiteral("video-timing-offset"), 0); // Also pick up "movie.en.srt" style files next to "movie.mkv". setPropertyAsync(QStringLiteral("sub-auto"), QStringLiteral("fuzzy"));