diff options
author | wm4 <wm4@nowhere> | 2017-10-17 09:07:35 +0200 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2017-10-17 09:07:35 +0200 |
commit | c90f76d3224f41dda2ac462e3aedcd0dd10ce3cf (patch) | |
tree | 9592eb12cb72e376bc328533ae15e53beff58b10 /video/out/gpu/video.h | |
parent | b299a3f54656095bd0f038360721d29356c7049d (diff) | |
download | mpv-c90f76d3224f41dda2ac462e3aedcd0dd10ce3cf.tar.bz2 mpv-c90f76d3224f41dda2ac462e3aedcd0dd10ce3cf.tar.xz |
vo_gpu: fix video sometimes not being rerendered on equalizer change
With video paused, changing the brightness controls (or similar) would
sometimes not rerender the video frame. So the OSD would redraw, but the
video wouldn't change. This is caused by output caching, and a redraw
request is free to return the cached frame. Change it such to invalidate
the cached frame if any of the options or the equalizer change.
In theory, gl_video_reset_surfaces() could be called if the equalizer
changes - this would apparently force interpolatzion to redraw all
frames. But this looks kind of crappy when changing the equalizer during
playback. It'll "eventually" use the correct settings anyway, and when
paused interpolation is off.
Diffstat (limited to 'video/out/gpu/video.h')
-rw-r--r-- | video/out/gpu/video.h | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/video/out/gpu/video.h b/video/out/gpu/video.h index 8b84db8b58..b87390f4d1 100644 --- a/video/out/gpu/video.h +++ b/video/out/gpu/video.h @@ -150,7 +150,6 @@ struct gl_video *gl_video_init(struct ra *ra, struct mp_log *log, struct mpv_global *g); void gl_video_uninit(struct gl_video *p); void gl_video_set_osd_source(struct gl_video *p, struct osd_state *osd); -void gl_video_update_options(struct gl_video *p); bool gl_video_check_format(struct gl_video *p, int mp_format); void gl_video_config(struct gl_video *p, struct mp_image_params *params); void gl_video_set_output_depth(struct gl_video *p, int r, int g, int b); |