diff options
author | wm4 <wm4@nowhere> | 2014-05-03 15:37:00 +0200 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2014-05-03 16:33:07 +0200 |
commit | 6589c5424ec16849c9665e8ea365d9e5ce0a88cb (patch) | |
tree | 3fa7d26742401b21556bb7335e6776b21c650e81 /DOCS | |
parent | ae4613cd3bdc93aed605483f8ce910c93408f683 (diff) | |
download | mpv-6589c5424ec16849c9665e8ea365d9e5ce0a88cb.tar.bz2 mpv-6589c5424ec16849c9665e8ea365d9e5ce0a88cb.tar.xz |
video: remove a corner case by introducing another one
When loading a video, and a script reacts to MPV_EVENT_VIDEO_RECONFIG,
and the script inserts a video filter, the first frame can be skipped.
This happens simply because the first frame is (usually) still queued in
the video filter chain, and changing the filter chain will drop all
queued frames. So this is just a corner case that just happens in a
weird situation.
But it's still annoying when having such a script, and starting
something where the first frame is very visible, and not starting in
paused mode. (All in all, a corner case.) Do this by immediately queuing
1 filtered frame to the VO immediately after reconfig, instead of
leaving it to the video loop doing it as "incremental" work. Simply
fallthrough to the next case. We must not overwrite "r" in this case,
because that contains the current status.
Note that the first frame will not be filtered using the inserted
filter.
Diffstat (limited to 'DOCS')
0 files changed, 0 insertions, 0 deletions