mirror of https://github.com/mpv-player/mpv
player: some fixes for property notification
`core-idle` depends on seeking state `mpctx->restart_complete`, so make `core-idle` notified whenever `seeking` is notified, too. `paused-for-cache` can be changed on MPV_EVENT_CACHE_UPDATE obviously. Finally, `MPV_EVENT_PLAYBACK_RESTART` should be notified after `mpctx->restart_complete` changed.
This commit is contained in:
parent
c29ab5a46b
commit
d1886f3318
|
@ -3443,12 +3443,12 @@ static const char *const *const mp_event_property_change[] = {
|
|||
"width", "height", "fps", "aspect", "vo-configured"),
|
||||
E(MPV_EVENT_AUDIO_RECONFIG, "audio-format", "audio-codec", "audio-bitrate",
|
||||
"samplerate", "channels", "audio"),
|
||||
E(MPV_EVENT_SEEK, "seeking"),
|
||||
E(MPV_EVENT_PLAYBACK_RESTART, "seeking"),
|
||||
E(MPV_EVENT_SEEK, "seeking", "core-idle"),
|
||||
E(MPV_EVENT_PLAYBACK_RESTART, "seeking", "core-idle"),
|
||||
E(MPV_EVENT_METADATA_UPDATE, "metadata", "filtered-metadata"),
|
||||
E(MPV_EVENT_CHAPTER_CHANGE, "chapter", "chapter-metadata"),
|
||||
E(MP_EVENT_CACHE_UPDATE, "cache", "cache-free", "cache-used", "cache-idle",
|
||||
"demuxer-cache-duration", "demuxer-cache-idle"),
|
||||
"demuxer-cache-duration", "demuxer-cache-idle", "paused-for-cache"),
|
||||
E(MP_EVENT_WIN_RESIZE, "window-scale"),
|
||||
E(MP_EVENT_WIN_STATE, "window-minimized", "display-names"),
|
||||
};
|
||||
|
|
|
@ -933,8 +933,8 @@ void run_playloop(struct MPContext *mpctx)
|
|||
fill_audio_out_buffers(mpctx, endpts); // actually play prepared buffer
|
||||
if (!mpctx->restart_complete) {
|
||||
mpctx->hrseek_active = false;
|
||||
mp_notify(mpctx, MPV_EVENT_PLAYBACK_RESTART, NULL);
|
||||
mpctx->restart_complete = true;
|
||||
mp_notify(mpctx, MPV_EVENT_PLAYBACK_RESTART, NULL);
|
||||
if (!mpctx->playing_msg_shown) {
|
||||
if (opts->playing_msg) {
|
||||
char *msg =
|
||||
|
|
Loading…
Reference in New Issue