diff options
author | wm4 <wm4@nowhere> | 2016-11-07 22:49:24 +0100 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2016-11-07 22:49:24 +0100 |
commit | 6a06e6002b4d879b1586dcee74cadb5f837680d8 (patch) | |
tree | d6751b39ab9ad9efd12a9155d2e3b14658377886 /video/out/opengl/video.c | |
parent | de72cb2c33aec91d50640ee211a7f95629143317 (diff) | |
download | mpv-6a06e6002b4d879b1586dcee74cadb5f837680d8.tar.bz2 mpv-6a06e6002b4d879b1586dcee74cadb5f837680d8.tar.xz |
vo_opengl: fix --blend-subtitles handling
The intention was that if --blend-subtitles is enabled, the frame should
always be re-rendered instead of using e.g. a cached scaled frame. The
reason is that subtitles can change anyway, e.g. if you pause and change
subtitle size and such.
On the other hand, if the frame is marked as repeated, it should always
use the cached copy. Actually "simplify" this and drop the cache only if
playback is paused (which frame->still indicates indirectly).
Also see PR #3773.
Diffstat (limited to 'video/out/opengl/video.c')
-rw-r--r-- | video/out/opengl/video.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/video/out/opengl/video.c b/video/out/opengl/video.c index 90f194b230..a59a8e4ffa 100644 --- a/video/out/opengl/video.c +++ b/video/out/opengl/video.c @@ -2802,8 +2802,8 @@ void gl_video_render_frame(struct gl_video *p, struct vo_frame *frame, int fbo) bool is_new = frame->frame_id != p->image.id; // Redrawing a frame might update subtitles. - if (!frame->repeat && p->opts.blend_subs) - is_new = false; + if (frame->still && p->opts.blend_subs) + is_new = true; if (is_new || !p->output_fbo_valid) { p->output_fbo_valid = false; |