summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2014-05-02 01:28:52 +0200
committerwm4 <wm4@nowhere>2014-05-02 01:28:52 +0200
commit2386e183fed203af902213280ef866dd2aa870fb (patch)
tree0a64b4438036969ae7a466683db4246aa25aac74
parent585d8c6856e8eaf77c518ad4679e8c66660fc440 (diff)
downloadmpv-2386e183fed203af902213280ef866dd2aa870fb.tar.bz2
mpv-2386e183fed203af902213280ef866dd2aa870fb.tar.xz
client API, video: signal reconfig at the right time
Filter reconfig can now happen a few frames before VO reconfig.
-rw-r--r--player/video.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/player/video.c b/player/video.c
index e84befe1f7..59acce0a19 100644
--- a/player/video.c
+++ b/player/video.c
@@ -95,10 +95,6 @@ static void filter_reconfig(struct MPContext *mpctx,
set_allowed_vo_formats(d_video->vfilter, mpctx->video_out);
- // The event should happen _after_ filter and VO reconfig. Since we don't
- // have any fine grained locking, this is just as good.
- mp_notify(mpctx, MPV_EVENT_VIDEO_RECONFIG, NULL);
-
if (video_reconfig_filters(d_video, &params) < 0) {
// Most video filters don't work with hardware decoding, so this
// might be the reason why filter reconfig failed.
@@ -421,6 +417,8 @@ static void init_vo(struct MPContext *mpctx)
video_set_colors(d_video, "saturation", opts->gamma_saturation);
if (opts->gamma_hue != 1000)
video_set_colors(d_video, "hue", opts->gamma_hue);
+
+ mp_notify(mpctx, MPV_EVENT_VIDEO_RECONFIG, NULL);
}
// Fill the VO buffer with a newly filtered or decoded image.