summaryrefslogtreecommitdiffstats
path: root/sub/sd_lavc.c
diff options
context:
space:
mode:
authorKacper Michajłow <kasper93@gmail.com>2024-02-04 18:31:18 +0100
committerDudemanguy <random342@airmail.cc>2024-02-15 16:39:58 +0000
commit5098a27e662ba4a4779baad0408b5e6dcb85c384 (patch)
treef2cf484c4533395e6b02d10c9c2dbed08486aea4 /sub/sd_lavc.c
parenta329bb546c0ce553f6fb3fb398b8b728730d63a7 (diff)
downloadmpv-5098a27e662ba4a4779baad0408b5e6dcb85c384.tar.bz2
mpv-5098a27e662ba4a4779baad0408b5e6dcb85c384.tar.xz
vo: ensure that frames are not eaten on reconfig
This avoids clearing the queued frame and the currently displayed one on VO reconfiguration requests that happen when new frames arrive. Instead, let those frames be fully displayed. Fixes mf:// playback issues introduced after commit ef11d31. Instead of removing the frame timing check embrace and fix it to wake up the playloop as needed. The frame display duration is problematic to handle as both VO and playloop thread would already be sleeping, but in certain use cases it is needed to display frames in full, so in this case, let the VO sleep to the end of frame, wake up the core as requested and go back sleeping. Note that this patch series reintroduces 0c9ac5835, which is esenitally fixed in this commit. It is still not perfect, but it is better than just busy waiting on playloop, even if those events when this would be needed are quite rare.
Diffstat (limited to 'sub/sd_lavc.c')
0 files changed, 0 insertions, 0 deletions