From b8ade7c99b830ee9870040bcfc1f2c3d3a64d172 Mon Sep 17 00:00:00 2001 From: wm4 Date: Fri, 16 Sep 2016 14:23:54 +0200 Subject: player, ao, vo: don't call mp_input_wakeup() directly Currently, calling mp_input_wakeup() will wake up the core thread (also called the playloop). This seems odd, but currently the core indeed calls mp_input_wait() when it has nothing more to do. It's done this way because MPlayer used input_ctx as central "mainloop". This is probably going to change. Remove direct calls to this function, and replace it with mp_wakeup_core() calls. ao and vo are changed to use opaque callbacks and not use input_ctx for this purpose. Other code already uses opaque callbacks, or has legitimate reasons to use input_ctx directly (such as sending actual user input). --- audio/out/pull.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'audio/out/pull.c') diff --git a/audio/out/pull.c b/audio/out/pull.c index 5dd6525fc8..44f6ab3355 100644 --- a/audio/out/pull.c +++ b/audio/out/pull.c @@ -151,7 +151,7 @@ int ao_read_data(struct ao *ao, void **data, int samples, int64_t out_time_us) end: if (need_wakeup) - mp_input_wakeup_nolock(ao->input_ctx); + ao->wakeup_cb(ao->wakeup_ctx); // pad with silence (underflow/paused/eof) for (int n = 0; n < ao->num_planes; n++) -- cgit v1.2.3