diff options
111 files changed, 4378 insertions, 3193 deletions
diff --git a/DOCS/client-api-changes.rst b/DOCS/client-api-changes.rst index 6197e48a39..b9b264d220 100644 --- a/DOCS/client-api-changes.rst +++ b/DOCS/client-api-changes.rst @@ -32,6 +32,10 @@ API changes :: --- mpv 0.30.0 --- + 1.103 - redo handling of async commands + - add mpv_event_command and make it possible to return values from + commands issued with mpv_command_async() or mpv_command_node_async() + - add mpv_abort_async_command() 1.102 - rename struct mpv_opengl_drm_osd_size to mpv_opengl_drm_draw_surface_size - rename MPV_RENDER_PARAM_DRM_OSD_SIZE to MPV_RENDER_PARAM_DRM_DRAW_SURFACE_SIZE diff --git a/DOCS/interface-changes.rst b/DOCS/interface-changes.rst index 2fd30628d8..160bc3679c 100644 --- a/DOCS/interface-changes.rst +++ b/DOCS/interface-changes.rst @@ -53,6 +53,29 @@ Interface changes mapped versions of a color. - add --hdr-peak-decay-rate and --hdr-scene-threshold-low/high - add --tone-mapping-max-boost + - ipc: require that "request_id" fields are integers. Other types are still + accepted for compatibility, but this will stop in the future. Also, if no + request_id is provided, 0 will be assumed. + - mpv_command_node() and mp.command_native() now support named arguments + (see manpage). If you want to use them, use a new version of the manpage + as reference, which lists the definitive names. + - edition and disc title switching will now fully reload playback (may have + consequences for scripts, client API, or when using file-local options) + - with the removal of the stream cache, the following properties and options were + dropped: `cache`, `cache-size`, `cache-free`, `cache-used`, `--cache-default`, + `--cache-initial`, `--cache-seek-min`, `--cache-backbuffer`, `--cache-file`, + `--cache-file-size` + - remove async playback abort hack. This breaks aborting playback in the + following cases, iff the current stream is a network stream that + completely stopped responding: + - setting "program" property + - setting "cache-size" property + In earlier versions of mpv, the player core froze as well in these cases, + but could still be aborted with the quit, stop, playlist-prev, + playlist-next commands. If these properties are not accessed, frozen + network streams should not freeze the player core (only playback in + uncached regions), and differing behavior should be reported as a bug. + If --demuxer-thread=no is used, there are no guarantees. --- mpv 0.29.0 --- - drop --opensles-sample-rate, as --audio-samplerate should be used if desired - drop deprecated --videotoolbox-format, --ff-aid, --ff-vid, --ff-sid, @@ -137,8 +160,6 @@ Interface changes of 3D content doesn't justify such an option anyway. - change cycle-values command to use the current value, instead of an internal counter that remembered the current position. - - edition and disc title switching will now fully reload playback (may have - consequences for scripts, client API, or when using file-local options) - remove deprecated ao/vo auto profiles. Consider using scripts like auto-profiles.lua instead. --- mpv 0.28.0 --- diff --git a/DOCS/man/input.rst b/DOCS/man/input.rst index f55eea1409..b2d676c644 100644 --- a/DOCS/man/input.rst +++ b/DOCS/man/input.rst @@ -41,10 +41,10 @@ commands they're bound to on the OSD, instead of executing the commands:: (Only closing the window will make **mpv** exit, pressing normal keys will merely display the binding, even if mapped to quit.) -General Input Command Syntax ----------------------------- +input.conf syntax +----------------- -``[Shift+][Ctrl+][Alt+][Meta+]<key> [{<section>}] [<prefixes>] <command> (<argument>)* [; <command>]`` +``[Shift+][Ctrl+][Alt+][Meta+]<key> [{<section>}] <command> ( ; <command> )*`` Note that by default, the right Alt key can be used to create special characters, and thus does not register as a modifier. The option @@ -59,9 +59,9 @@ character), or a symbolic name (as printed by ``--input-keylist``). ``<section>`` (braced with ``{`` and ``}``) is the input section for this command. -Arguments are separated by whitespace. This applies even to string arguments. -For this reason, string arguments should be quoted with ``"``. Inside quotes, -C-style escaping can be used. +``<command>`` is the command itself. It consists of the command name and +multiple (or none) commands, all separated by whitespace. String arguments +need to be quoted with ``"``. Details see ``Flat command syntax``. You can bind multiple commands to one key. For example: @@ -78,15 +78,89 @@ that matches, and the multi-key command will never be called. Intermediate keys can be remapped to ``ignore`` in order to avoid this issue. The maximum number of (non-modifier) keys for combinations is currently 4. +Flat command syntax +------------------- + +This is the syntax used in input.conf, and referred to "input.conf syntax" in +a number of other places. + +``<command> ::= [<prefixes>] <command_name> (<argument>)*`` +``<argument> ::= (<string> | " <quoted_string> " )`` + +``command_name`` is an unquoted string with the command name itself. See +`List of Input Commands`_ for a list. + +Arguments are separated by whitespace. This applies even to string arguments. +For this reason, string arguments should be quoted with ``"``. If a string |