Triggered by the script-message input command. The command uses the
first argument of the command as client name (see mpv_client_name()) to
dispatch the message, and passes along all arguments starting from the
second argument as strings.
See also mpv_event and mpv_event_client_message.
Triggered if a hook handler was registered with mpv_hook_add(), and the
hook is invoked. If you receive this, you must handle it, and continue
the hook with mpv_hook_continue().
See also mpv_event and mpv_event_hook.
Idle mode was entered. In this mode, no file is played, and the playback
core waits for new commands. (The command line player normally quits
instead of entering idle mode, unless --idle was specified. If mpv
was started with mpv_create(), idle mode is enabled by default.)
Happens when metadata (like file tags) is possibly updated. (It's left
unspecified whether this happens on file start or only when it changes
within a file.)
There was a discontinuity of some sort (like a seek), and playback
was reinitialized. Usually happens on start of playback and after
seeking. The main purpose is allowing the client to detect when a seek
request is finished.
Happens if the internal per-mpv_handle ringbuffer overflows, and at
least 1 event had to be dropped. This can happen if the client doesn't
read the event queue quickly enough with mpv_wait_event(), or if the
client makes a very large number of asynchronous calls at once.
@deprecated This was used internally with the internal "script_dispatch"
command to dispatch keyboard and mouse input for the OSC.
It was never useful in general and has been completely
replaced with "script-binding".
This event never happens anymore, and is included in this
header only for compatibility.
Happens when the player quits. The player enters a state where it tries
to disconnect all clients. Most requests to the player will fail, and
the client should react to this and quit with mpv_destroy() as soon as
possible.
Sent every time after a video frame is displayed. Note that currently,
this will be sent in lower frequency if there is no video, or playback
is paused - but that will be removed in the future, and it will be
restricted to video frames only.
The list of video/audio/subtitle tracks was changed. (E.g. a new track
was found. This doesn't necessarily indicate a track switch; for this,
MPV_EVENT_TRACK_SWITCHED is used.)
Happens after video changed in some way. This can happen on resolution
changes, pixel format changes, or video filter changes. The event is
sent after the video filters and the VO are reconfigured. Applications
embedding a mpv window should listen to this event in order to resize
the window if needed.
Note that this event can happen sporadically, and you should check
yourself whether the video parameters really changed before doing
something expensive.