summaryrefslogtreecommitdiffstats
path: root/DOCS/man
diff options
context:
space:
mode:
Diffstat (limited to 'DOCS/man')
-rw-r--r--DOCS/man/ao.rst4
-rw-r--r--DOCS/man/console.rst1
-rw-r--r--DOCS/man/encode.rst2
-rw-r--r--DOCS/man/input.rst131
-rw-r--r--DOCS/man/javascript.rst4
-rw-r--r--DOCS/man/lua.rst63
-rw-r--r--DOCS/man/mpv.rst42
-rw-r--r--DOCS/man/options.rst146
-rw-r--r--DOCS/man/osc.rst85
-rw-r--r--DOCS/man/stats.rst17
-rw-r--r--DOCS/man/vf.rst16
-rw-r--r--DOCS/man/vo.rst4
12 files changed, 443 insertions, 72 deletions
diff --git a/DOCS/man/ao.rst b/DOCS/man/ao.rst
index 78dfed3b51..f03f64242e 100644
--- a/DOCS/man/ao.rst
+++ b/DOCS/man/ao.rst
@@ -15,6 +15,10 @@ in the list.
See ``--ao=help`` for a list of compiled-in audio output drivers sorted by
autoprobe order.
+ Note that the default audio output driver is subject to change, and must
+ not be relied upon. If a certain AO needs to be used, it must be
+ explicitly specified.
+
Available audio output drivers are:
``alsa``
diff --git a/DOCS/man/console.rst b/DOCS/man/console.rst
index 69cc103c15..7028e6c76d 100644
--- a/DOCS/man/console.rst
+++ b/DOCS/man/console.rst
@@ -167,7 +167,6 @@ Configurable Options
Default: true
Remove duplicate entries in history as to only keep the latest one.
- multiplied by "scale."
``font_hw_ratio``
Default: auto
diff --git a/DOCS/man/encode.rst b/DOCS/man/encode.rst
index 26f3d6cbc8..c650d0f6c4 100644
--- a/DOCS/man/encode.rst
+++ b/DOCS/man/encode.rst
@@ -8,7 +8,7 @@ You can encode files from one format/codec to another using this facility.
``--of=<format>``
Specifies the output format (overrides autodetection by the file name
- extension of the file specified by ``-o``). See ``--of=help`` for a full
+ extension of the file specified by ``--o``). See ``--of=help`` for a full
list of supported formats.
``--ofopts=<options>``
diff --git a/DOCS/man/input.rst b/DOCS/man/input.rst
index 7863090c59..0fc0619a11 100644
--- a/DOCS/man/input.rst
+++ b/DOCS/man/input.rst
@@ -487,7 +487,7 @@ Remember to quote string arguments in input.conf (see `Flat command syntax`_).
``insert-at-play`` actions. When used with those actions, the new item will
be inserted at the index position in the playlist, or appended to the end if
index is less than 0 or greater than the size of the playlist. This argument
- will be ignored for all other actions.
+ will be ignored for all other actions. This argument is added in mpv 0.38.0.
The fourth argument is a list of options and values which should be set
while the file is playing. It is of the form ``opt1=value1,opt2=value2,..``.
@@ -496,6 +496,14 @@ Remember to quote string arguments in input.conf (see `Flat command syntax`_).
options are set during playback, and restored to the previous value at end
of playback (see `Per-File Options`_).
+ .. warning::
+
+ Since mpv 0.38.0, an insertion index argument is added as the third argument.
+ This breaks all existing uses of this command which make use of the argument
+ to include the list of options to be set while the file is playing. To address
+ this problem, the third argument now needs to be set to -1 if the fourth
+ argument needs to be used.
+
``loadlist <url> [<flags> [<index>]]``
Load the given playlist file or URL (like ``--playlist``).
@@ -775,7 +783,11 @@ Remember to quote string arguments in input.conf (see `Flat command syntax`_).
Steps through the secondary subtitles.
``sub-seek <skip> <flags>``
- Seek to the next (skip set to 1) or the previous (skip set to -1) subtitle.
+ Change video and audio position such that the subtitle event after
+ ``<skip>`` subtitle events is displayed. For example, ``sub-seek 1`` skips
+ to the next subtitle, ``sub-seek -1`` skips to the previous subtitles, and
+ ``sub-seek 0`` seeks to the beginning of the current subtitle.
+
This is similar to ``sub-step``, except that it seeks video and audio
instead of adjusting the subtitle delay.
@@ -788,7 +800,7 @@ Remember to quote string arguments in input.conf (see `Flat command syntax`_).
For embedded subtitles (like with Matroska), this works only with subtitle
events that have already been displayed, or are within a short prefetch
- range.
+ range. See `Cache`_ for details on how to control the available prefetch range.
``print-text <text>``
Print text to stdout. The string can contain properties (see
@@ -806,12 +818,12 @@ Remember to quote string arguments in input.conf (see `Flat command syntax`_).
<level>
The minimum OSD level to show the text at (see ``--osd-level``).
-``expand-text <string>``
+``expand-text <text>``
Property-expand the argument and return the expanded string. This can be
used only through the client API or from a script using
``mp.command_native``. (see `Property Expansion`_).
-``expand-path "<string>"``
+``expand-path "<text>"``
Expand a path's double-tilde placeholders into a platform-specific path.
As ``expand-text``, this can only be used through the client API or from
a script using ``mp.command_native``.
@@ -823,6 +835,33 @@ Remember to quote string arguments in input.conf (see `Flat command syntax`_).
This line of Lua would show the location of the user's mpv
configuration directory on the OSD.
+``normalize-path <filename>``
+ Return a canonical representation of the path ``filename`` by converting it
+ to an absolute path, removing consecutive slashes, removing ``.``
+ components, resolving ``..`` components, and converting slashes to
+ backslashes on Windows. Symlinks are not resolved unless the platform is
+ Unix-like and one of the path components is ``..``. If ``filename`` is a
+ URL, it is returned unchanged. This can only be used through the client API
+ or from a script using ``mp.command_native``.
+
+ .. admonition:: Example
+
+ ``mp.osd_message(mp.command_native({"normalize-path", "/foo//./bar"}))``
+
+ This line of Lua prints "/foo/bar" on the OSD.
+
+``escape-ass <text>``
+ Modify ``text`` so that commands and functions that interpret ASS tags,
+ such as ``osd-overlay`` and ``mp.create_osd_overlay``, will display it
+ verbatim, and return it. This can only be used through the client API or
+ from a script using ``mp.command_native``.
+
+ .. admonition:: Example
+
+ ``mp.osd_message(mp.command_native({"escape-ass", "foo {bar}"}))``
+
+ This line of Lua prints "foo \\{bar}" on the OSD.
+
``show-progress``
Show the progress bar, the elapsed time and the total duration of the file
on the OSD. ``no-osd`` has no effect on this command.
@@ -1262,18 +1301,6 @@ Input Commands that are Possibly Subject to Change
use the ``mp.create_osd_overlay()`` helper instead of invoking this
command directly.
-``escape-ass <text>``
- Modify ``text`` so that commands and functions that interpret ASS tags,
- such as ``osd-overlay`` and ``mp.create_osd_overlay``, will display it
- verbatim, and return it. This can only be used through the client API or
- from a script using ``mp.command_native``.
-
- .. admonition:: Example
-
- ``mp.osd_message(mp.command_native({"escape-ass", "foo {bar}"}))``
-
- This line of Lua prints "foo \\{bar}" on the OSD.
-
``script-message [<arg1> [<arg2> [...]]]``
Send a message to all clients, and pass it the following list of arguments.
What this message means, how many arguments it takes, and what the arguments
@@ -1317,13 +1344,16 @@ Input Commands that are Possibly Subject to Change
key with a letter is normally not emitted as having a modifier, and results
in upper case text instead, but some backends may mess up).
- The key state consists of 2 characters:
+ The key state consists of 3 characters:
1. One of ``d`` (key was pressed down), ``u`` (was released), ``r`` (key
is still down, and was repeated; only if key repeat is enabled for this
binding), ``p`` (key was pressed; happens if up/down can't be tracked).
2. Whether the event originates from the mouse, either ``m`` (mouse button)
or ``-`` (something else).
+ 3. Whether the event results from a cancellation (e.g. the key is logically
+ released but not physically released), either ``c`` (canceled) or ``-``
+ (something else). Not all types of cancellations set this flag.
Future versions can add more arguments and more key state characters to
support more input peculiarities.
@@ -1799,6 +1829,9 @@ prefixes can be specified. They are separated by whitespace.
This prefix forces enabling key repeat in any case. For a list of commands:
the first command determines the repeatability of the whole list (up to and
including version 0.33 - a list was always repeatable).
+``nonrepeatable``
+ For some commands, keeping a key pressed runs the command repeatedly.
+ This prefix forces disabling key repeat in any case.
``async``
Allow asynchronous execution (if possible). Note that only a few commands
will support this (usually this is explicitly documented). Some commands
@@ -2080,9 +2113,10 @@ Property list
``audio-pts``
Current audio playback position in current file in seconds. Unlike time-pos,
- this updates more often than once per frame. For audio-only files, it is
- mostly equivalent to time-pos, while for video-only files this property is
- not available.
+ this updates more often than once per frame. This is mostly equivalent to
+ time-pos for audio-only files however it also takes into account the audio
+ driver delay. This can lead to negative values in certain cases, so in
+ general you probably want to simply use time-pos.
This has a sub-property:
@@ -2318,6 +2352,11 @@ Property list
other byte-oriented input layer) in bytes per second. May be inaccurate or
missing.
+ ``ts-per-stream`` is an array containing an entry for each stream type: video,
+ audio, and subtitle. For each stream type, the details for the demuxer cache
+ for that stream type are available as ``cache-duration``, ``reader-pts`` and
+ ``cache-end``.
+
When querying the property with the client API using ``MPV_FORMAT_NODE``,
or with Lua ``mp.get_property_native``, this will return a mpv_node with
the following contents:
@@ -2337,6 +2376,12 @@ Property list
"reader-pts" MPV_FORMAT_DOUBLE
"cache-duration" MPV_FORMAT_DOUBLE
"raw-input-rate" MPV_FORMAT_INT64
+ "ts-per-stream" MPV_FORMAT_NODE_ARRAY
+ MPV_FORMAT_NODE_MAP
+ "type" MPV_FORMAT_STRING
+ "cache-duration" MPV_FORMAT_DOUBLE
+ "reader-pts" MPV_FORMAT_DOUBLE
+ "cache-end" MPV_FORMAT_DOUBLE
Other fields (might be changed or removed in the future):
@@ -2522,7 +2567,7 @@ Property list
Display aspect ratio as float.
``video-params/aspect-name``
- Display aspect ratio name as string. The name coresponds to motion
+ Display aspect ratio name as string. The name corresponds to motion
picture film format that introduced given aspect ratio in film.
``video-params/par``
@@ -2800,7 +2845,7 @@ Property list
not being opened yet or not being supported by the VO.
``mouse-pos``
- Read-only - last known mouse position, normalizd to OSD dimensions.
+ Read-only - last known mouse position, normalized to OSD dimensions.
Has the following sub-properties (which can be read as ``MPV_FORMAT_NODE``
or Lua table with ``mp.get_property_native``):
@@ -2813,6 +2858,35 @@ Property list
coordinates should be ignored when this value is false, because the
video backends update them only when the pointer hovers the window.
+``touch-pos``
+ Read-only - last known touch point positions, normalized to OSD dimensions.
+
+ This has a number of sub-properties. Replace ``N`` with the 0-based touch
+ point index. Whenever a new finger touches the screen, a new touch point is
+ added to the list of touch points with the smallest unused ``N`` available.
+
+ ``touch-pos/count``
+ Number of active touch points.
+
+ ``touch-pos/N/x``, ``touch-pos/N/y``
+ Position of the Nth touch point.
+
+ ``touch-pos/N/id``
+ Unique identifier of the touch point. This can be used to identify
+ individual touch points when their indexes change.
+
+ When querying the property with the client API using ``MPV_FORMAT_NODE``,
+ or with Lua ``mp.get_property_native``, this will return a mpv_node with
+ the following contents:
+
+ ::
+
+ MPV_FORMAT_NODE_ARRAY
+ MPV_FORMAT_NODE_MAP (for each touch point)
+ "x" MPV_FORMAT_INT64
+ "y" MPV_FORMAT_INT64
+ "id" MPV_FORMAT_INT64
+
``sub-ass-extradata``
The current ASS subtitle track's extradata. There is no formatting done.
The extradata is returned as a string as-is. This property is not
@@ -2997,7 +3071,7 @@ Property list
Total number of tracks.
``track-list/N/id``
- The ID as it's used for ``-sid``/``--aid``/``--vid``. This is unique
+ The ID as it's used for ``--sid``/``--aid``/``--vid``. This is unique
within tracks of the same type (sub/audio/video), but otherwise not.
``track-list/N/type``
@@ -3126,6 +3200,10 @@ Property list
values currently. It's possible that future mpv versions will make
these properties unavailable instead in this case.
+ ``track-list/N/dolby-vision-profile``, ``track-list/N/dolby-vision-level``
+ Dolby Vision profile and level. May not be available if the container
+ does not provide this information.
+
When querying the property with the client API using ``MPV_FORMAT_NODE``,
or with Lua ``mp.get_property_native``, this will return a mpv_node with
the following contents:
@@ -3170,6 +3248,8 @@ Property list
"replaygain-track-gain" MPV_FORMAT_DOUBLE
"replaygain-album-peak" MPV_FORMAT_DOUBLE
"replaygain-album-gain" MPV_FORMAT_DOUBLE
+ "dolby-vision-profile" MPV_FORMAT_INT64
+ "dolby-vision-level" MPV_FORMAT_INT64
``current-tracks/...``
This gives access to currently selected tracks. It redirects to the correct
@@ -3613,6 +3693,9 @@ Property list
means the option value will be restored to the value before playback
start when playback ends.
+ ``option-info/<name>/expects-file``
+ Whether the option takes file paths as arguments.
+
``option-info/<name>/default-value``
The default value of the option. May not always be available.
diff --git a/DOCS/man/javascript.rst b/DOCS/man/javascript.rst
index 0edb01f674..6dfae8b601 100644
--- a/DOCS/man/javascript.rst
+++ b/DOCS/man/javascript.rst
@@ -196,7 +196,9 @@ meta-paths like ``~~/foo`` (other JS file functions do expand meta paths).
``mp.options.read_options(obj [, identifier [, on_update]])`` (types:
string/boolean/number)
-``mp.input.get(obj)`` (LE)
+``mp.input.get(obj)``
+
+``mp.input.select(obj)``
``mp.input.terminate()``
diff --git a/DOCS/man/lua.rst b/DOCS/man/lua.rst
index 73776964d5..bd5a907d5b 100644
--- a/DOCS/man/lua.rst
+++ b/DOCS/man/lua.rst
@@ -292,6 +292,18 @@ The ``mp`` module is preloaded, although it can be loaded manually with
After calling this function, key presses will cause the function ``fn`` to
be called (unless the user remapped the key with another binding).
+ However, if the key binding is canceled , the function will not be called,
+ unless ``complex`` flag is set to ``true``, where the function will be
+ called with the ``canceled`` entry set to ``true``.
+
+ For example, a canceled key binding can happen in the following situations:
+
+ - If key A is pressed while key B is being held down, key B is logically
+ released ("canceled" by key A), which stops the current autorepeat
+ action key B has.
+ - If key A is pressed while a mouse button is being held down, the mouse
+ button is logically released, but the mouse button's action will not be
+ called, unless ``complex`` flag is set to ``true``.
The ``name`` argument should be a short symbolic string. It allows the user
to remap the key binding via input.conf using the ``script-message``
@@ -318,10 +330,14 @@ The ``mp`` module is preloaded, although it can be loaded manually with
``event``
Set to one of the strings ``down``, ``repeat``, ``up`` or
``press`` (the latter if key up/down/repeat can't be
- tracked).
+ tracked), which indicates the key's logical state.
``is_mouse``
- Boolean Whether the event was caused by a mouse button.
+ Boolean: Whether the event was caused by a mouse button.
+
+ ``canceled``
+ Boolean: Whether the event was canceled.
+ Not all types of cancellations set this flag.
``key_name``
The name of they key that triggered this, or ``nil`` if
@@ -888,9 +904,8 @@ REPL.
present a list of options with ``input.set_log()``.
``edited``
- A callback invoked when the text changes. This can be used to filter a
- list of options based on what the user typed with ``input.set_log()``,
- like dmenu does. The first argument is the text in the console.
+ A callback invoked when the text changes. The first argument is the text
+ in the console.
``complete``
A callback invoked when the user presses TAB. The first argument is the
@@ -951,6 +966,44 @@ REPL.
}
})
+``input.select(table)``
+ Specify a list of items that are presented to the user for selection. The
+ user can type part of the desired item and/or navigate them with
+ keybindings: ``Down`` and ``Ctrl+n`` go down, ``Up`` and ``Ctrl+p`` go up,
+ ``Page down`` and ``Ctrl+f`` scroll down one page, and ``Page up`` and
+ ``Ctrl+b`` scroll up one page.
+
+ The following entries of ``table`` are read:
+
+ ``prompt``
+ The string to be displayed before the input field.
+
+ ``items``
+ The table of the entries to choose from.
+
+ ``default_item``
+ The 1-based integer index of the preselected item.
+
+ ``submit``
+ The callback invoked when the user presses Enter. The first argument is
+ the 1-based index of the selected item. Unlike with ``input.get()``, the
+ console is automatically closed on submit without having to call
+ ``input.terminate()``.
+
+ Example:
+
+ ::
+
+ input.select({
+ items = {
+ "First playlist entry",
+ "Second playlist entry",
+ },
+ submit = function (id)
+ mp.commandv("playlist-play-index", id - 1)
+ end,
+ })
+
Events
------
diff --git a/DOCS/man/mpv.rst b/DOCS/man/mpv.rst
index b0f407e874..3b29124ea7 100644
--- a/DOCS/man/mpv.rst
+++ b/DOCS/man/mpv.rst
@@ -270,6 +270,46 @@ Alt+2 (and Command+2 on macOS)
Command + f (macOS only)
Toggle fullscreen (see also ``--fs``).
+(The following keybindings open a selector in the console that lets you choose
+from a list of items by typing part of the desired item and/or by navigating
+them with keybindings: ``Down`` and ``Ctrl+n`` go down, ``Up`` and ``Ctrl+p`` go
+up, ``Page down`` and ``Ctrl+f`` scroll down one page, and ``Page up`` and
+``Ctrl+b`` scroll up one page.)
+
+g-p
+ Select a playlist entry.
+
+g-s
+ Select a subtitle track.
+
+g-S
+ Select a secondary subtitle track.
+
+g-a
+ Select an audio track.
+
+g-v
+ Select a video track.
+
+g-t
+ Select a track of any type.
+
+g-c
+ Select a chapter.
+
+g-l
+ Select a subtitle line to seek to. This currently requires ``ffmpeg`` in
+ ``PATH``, or in the same folder as mpv on Windows.
+
+g-d
+ Select an audio device.
+
+g-b
+ Select a defined input binding.
+
+g-r
+ Show the values of all properties.
+
(The following keys are valid if you have a keyboard with multimedia keys.)
PAUSE
@@ -1698,5 +1738,5 @@ FILES ON MACOS
On macOS the watch later directory is located at ``~/.config/mpv/watch_later/``
and the cache directory is set to ``~/Library/Caches/io.mpv/``. These directories
-can't be overwritten by enviroment variables.
+can't be overwritten by environment variables.
Everything else is the same as `FILES`_.
diff --git a/DOCS/man/options.rst b/DOCS/man/options.rst
index bf1d55a294..e2c3c6d00c 100644
--- a/DOCS/man/options.rst
+++ b/DOCS/man/options.rst
@@ -5,11 +5,11 @@ Track Selection
---------------
``--alang=<languagecode[,languagecode,...]>``
- Specify a priority list of audio languages to use, as IETF language tags.
- Equivalent ISO 639-1 two-letter and ISO 639-2 three-letter codes are treated the same.
- The first tag in the list whose language matches a track in the file will be used.
- A track that matches more subtags will be preferred over one that matches fewer,
- with preference given to earlier subtags over later ones. See also ``--aid``.
+ Specify a prioritized list of audio languages to use, as IETF language tags.
+ Equivalent ISO 639-1 two-letter and ISO 639-2 three-letter codes are treated
+ the same. The first tag in the list that matches track's language in the file
+ will be used. A track that matches more subtags will be preferred over one
+ that matches fewer. See also ``--aid``.
This is a string list option. See `List Options`_ for details.
@@ -146,7 +146,7 @@ Track Selection
``--subs-match-os-language=<yes|no>``
When autoselecting a subtitle track, select the track that matches the language of your OS
if the audio stream is in a different language if suitable (default track or a forced track
- under the right conditions). Note that if ``-slang`` is set, this will be completely ignored
+ under the right conditions). Note that if ``--slang`` is set, this will be completely ignored
(default: yes).
``--subs-fallback=<yes|default|no>``
@@ -1023,6 +1023,10 @@ Program Behavior
`Conditional auto profiles`_ for details. ``auto`` will load the script,
but immediately unload it if there are no conditional profiles.
+``--load-select=<yes|no>``
+ Enable the builtin script that lets you select from lists of items (default:
+ yes). By default, its keybindings start with the ``g`` key.
+
``--player-operation-mode=<cplayer|pseudo-gui>``
For enabling "pseudo GUI mode", which means that the defaults for some
options are changed. This option should not normally be used directly, but
@@ -2387,7 +2391,8 @@ Subtitles
Whether to scale subtitles with the window size (default: yes). If this is
disabled, changing the window size won't change the subtitle font size.
- Like ``--sub-scale``, this can break ASS subtitles.
+ Affects plain text subtitles only (or ASS if ``--sub-ass-override`` is set
+ high enough).
``--sub-scale-with-window=<yes|no>``
Make the subtitle font size relative to the window, instead of the video.
@@ -2496,7 +2501,7 @@ Subtitles
Using this option may lead to incorrect subtitle rendering.
-``--sub-ass-override=<yes|no|force|scale|strip>``
+``--sub-ass-override=<no|yes|scale|force|strip>``
Control whether user style overrides should be applied. Note that all of
these overrides try to be somewhat smart about figuring out whether or not
a subtitle is considered a "sign".
@@ -2505,17 +2510,17 @@ Subtitles
overrides.
:yes: Apply all the ``--sub-ass-*`` style override options. Changing the
default for any of these options can lead to incorrect subtitle
- rendering (default).
+ rendering.
+ :scale: Like ``yes``, but also apply ``--sub-scale`` (default).
:force: Like ``yes``, but also force all ``--sub-*`` options. Can break
rendering easily.
- :scale: Like ``yes``, but also apply ``--sub-scale``.
:strip: Radically strip all ASS tags and styles from the subtitle. This
is equivalent to the old ``--no-ass`` / ``--no-sub-ass`` options.
This also controls some bitmap subtitle overrides, as well as HTML tags in
formats like SRT, despite the name of the option.
-``--secondary-sub-ass-override=<yes|no|force|scale|strip>``
+``--secondary-sub-ass-override=<no|yes|scale|force|strip>``
Control whether user secondary substyle overrides should be applied. This
works exactly like ``--sub-ass-override``.
@@ -4101,6 +4106,17 @@ Input
Whether this applies depends on the VO backend and how it handles
keyboard input. Does not apply to terminal input.
+``--native-touch=<yes|no>``
+ (Windows only)
+ For platforms which send emulated mouse inputs for touch-unaware clients,
+ such as Windows, use system native touch events, instead of receiving them
+ as emulated mouse events (default: no). This is required for multi-touch
+ support for these platforms.
+
+ Note that this option has no effect on other platforms: either native touch
+ is not supported by mpv, or the platform does not give an option to receive
+ emulated mouse inputs (so native touch is always enabled, e.g. Wayland).
+
``--input-ar-delay``
Delay in milliseconds before we start to autorepeat a key (default: 200).
Set it to 0 to disable.
@@ -4123,6 +4139,12 @@ Input
option is applied only during (lib)mpv initialization, and if disabled then it
will not be not possible to enable them later. May be useful to libmpv clients.
+``--input-builtin-dragging=<yes|no>``
+ Enable the built-in window-dragging behavior (default: yes). Setting it to no
+ disables the built-in dragging behavior. Note that unlike the ``window-dragging``
+ option, this option only affects VOs which support the ``begin-vo-dragging``
+ command, and does not disable window dragging initialized with the command.
+
``--input-cmdlist``
Prints all commands that can be bound to keys.
@@ -4220,8 +4242,7 @@ Input
``--input-cursor=<yes|no>``
Permit mpv to receive pointer events reported by the video output
- driver. Necessary to use the OSC, or to select the buttons in DVD menus.
- Support depends on the VO in use.
+ driver. Necessary to use the OSC. Support depends on the VO in use.
``--input-cursor-passthrough=<yes|no>``
Tell the backend windowing system to allow pointer events to passthrough
@@ -4281,6 +4302,18 @@ Input
disabled by default in libmpv as well - it should be enabled if you want
the mpv default key bindings.
+``--input-touch-emulate-mouse=<yes|no>``
+ When multi-touch support is enabled (either required by the platform,
+ or enabled by ``--native-touch``), emulate mouse move and button presses
+ for the touch events (default: yes). This is useful for compatibility
+ for mouse key bindings and scripts which read mouse positions for platforms
+ which do not support ``--native-touch=no`` (e.g. Wayland).
+
+``--input-dragging-deadzone=<N>``
+ Begin the built-in window dragging when the mouse moves outside a deadzone of
+ ``N`` pixels while the mouse button is being held down (default: 3). This only
+ affects VOs which support the ``begin-vo-dragging`` command.
+
OSD
---
@@ -4359,6 +4392,12 @@ OSD
Set the duration of ``osd-playing-msg`` in ms. If this is unset,
``osd-playing-msg`` stays on screen for the duration of ``osd-duration``.
+``--osd-playlist-entry=<title|filename|both>``
+ Whether to display the media title, filename, or both. If the
+ ``media-title`` is not available, it will display only the ``filename``.
+
+ Default: ``title``.
+
``--osd-bar-align-x=<-1-1>``
Position of the OSD bar. -1 is far left, 0 is centered, 1 is far right.
Fractional values (like 0.5) are allowed.
@@ -4452,12 +4491,18 @@ OSD
are always in actual pixels. The effect is that changing the window size
won't change the OSD font size.
+ .. note::
+
+ For scripts which draw user interface elements, it is recommended to
+ respect the value of this option when deciding whether the elements
+ are scaled with window size or not.
+
``--osd-shadow-color=<color>``
See ``--sub-color``. Color used for OSD shadow.
.. note::
- ignored when ``--osd-back-color`` is specified (or more exactly: when
+ Ignored when ``--osd-back-color`` is specified (or more exactly: when
that option is not set to completely transparent).
``--osd-shadow-offset=<size>``
@@ -5671,6 +5716,33 @@ them.
results, as can missing or incorrect display FPS information (see
``--display-fps-override``).
+``--egl-config-id=<ID>``
+ (EGL only)
+ Select EGLConfig with specific EGL_CONFIG_ID.
+ Rendering surfaces and contexts will be created using this EGLConfig.
+ You can use ``--msg-level=vo=trace`` to obtain a list of available configs.
+
+``--egl-output-format=<auto|rgb8|rgba8|rgb10|rgb10_a2|rgb16|rgba16|rgb16f|rgba16f|rgb32f|rgba32f>``
+ (EGL only)
+ Select a specific EGL output format to utilize for OpenGL rendering.
+ This option is mutually exclusive with ``--egl-config-id``.
+ "auto" is the default, which will pick the first usable config
+ based on the order given by the driver.
+
+ All formats are not available.
+ A fatal error is caused if an unavailable format is selected.
+
+ .. note::
+
+ There is no reliable API to query desktop bit depth in EGL.
+ You can manually set this option
+ according to the bit depth of your display.
+ This option also affects the auto-detection of ``--dither-depth``.
+
+ .. note::
+
+ Unlike ``--d3d11-output-format``, this option also takes effect with ``--vo=gpu-next``.
+
``--vulkan-device=<device name|UUID>``
The name or UUID of the Vulkan device to use for rendering and presentation. Use
``--vulkan-device=help`` to see the list of available devices and their
@@ -6267,6 +6339,37 @@ them.
macOS and cocoa-cb only.
+``--cocoa-cb-output-csp=<csp>``
+ This sets the color space of the layer to activate the macOS color
+ transformation. Depending on the color space used the system's EDR (HDR)
+ support will be activated. To get correct results, this needs to be set to
+ the color primaries/transfer characteristics of the VO target. It is recommended
+ to use this switch together with ``--target-trc`` and ``--target-prim``.
+
+ ``<csp>`` can be one of the following:
+
+ :auto: Sets the color space to the icc profile of the
+ screen (default).
+ :display-p3: DCI P3 primaries, a D65 white point and the sRGB
+ transfer function.
+ :display-p3-hlg: DCI P3 primaries, a D65 white point and the Hybrid
+ Log-Gamma (HLG) transfer function.
+ :display-p3-pq: DCI P3 primaries, a D65 white point and the Perceptual
+ Quantizer (PQ) transfer function.
+ :display-p3-linear: DCI P3 primaries, a D65 white point and linear transfer function.
+ :dci-p3: DCI P3 color space.
+ :bt.2020: ITU BT.2020 color space.
+ :bt.2020-linear: ITU BT.2020 color space and linear transfer function.
+ :bt.2100-hlg: ITU BT.2100 and the Hybrid Log-Gamma (HLG) transfer function.
+ :bt.2100-pq: ITU BT.2100 and the Perceptual Quantizer (PQ) transfer function.
+ :bt.709: ITU BT.709 color space.
+ :srgb: sRGB colorimetry and non-linear transfer function.
+ :srgb-linear: Same as sRGB but linear transfer function.
+ :rgb-linear: RGB and linear transfer function.
+ :adobe: Adobe RGB (1998) color space.
+
+ macOS and cocoa-cb only.
+
``--macos-title-bar-appearance=<appearance>``
Sets the appearance of the title bar (default: auto). Not all combinations
of appearances and ``--macos-title-bar-material`` materials make sense or
@@ -6394,6 +6497,9 @@ them.
order. You can also pass ``help`` to get a complete list of compiled in backends
(sorted by the default autoprobe order).
+ Note that the default GPU context is subject to change, and must not be relied upon.
+ If a certain GPU context needs to be used, it must be explicitly specified.
+
auto
auto-select (default). Note that this context must be used alone and
does not participate in the priority list.
@@ -6436,7 +6542,9 @@ them.
Controls which type of graphics APIs will be accepted:
auto
- Use any available API (default)
+ Use any available API (default). Note that the default GPU API used for this
+ value is subject to change, and must not be relied upon. If a certain GPU API
+ needs to be used, it must be explicitly specified.
opengl
Allow only OpenGL (requires OpenGL 2.1+ or GLES 2.0+)
vulkan
@@ -7061,10 +7169,10 @@ Miscellaneous
-------------
``--display-tags=tag1,tags2,...``
- Set the list of tags that should be displayed on the terminal. Tags that
- are in the list, but are not present in the played file, will not be shown.
- If a value ends with ``*``, all tags are matched by prefix (though there
- is no general globbing). Just passing ``*`` essentially filtering.
+ Set the list of tags that should be displayed on the terminal and stats.
+ Tags that are in the list, but are not present in the played file, will not
+ be shown. If a value ends with ``*``, all tags are matched by prefix (though
+ there is no general globbing). Just passing ``*`` essentially filtering.
The default includes a common list of tags, call mpv with ``--list-options``
to see it.
diff --git a/DOCS/man/osc.rst b/DOCS/man/osc.rst
index 97b4f4818e..61b21c3a38 100644
--- a/DOCS/man/osc.rst
+++ b/DOCS/man/osc.rst
@@ -247,16 +247,13 @@ Configurable Options
Scale factor of the OSC when fullscreen
-``scaleforcedwindow``
- Default: 2.0
-
- Scale factor of the OSC when rendered on a forced (dummy) window
-
``vidscale``
- Default: yes
+ Default: auto
- Scale the OSC with the video
- ``no`` tries to keep the OSC size constant as much as the window size allows
+ Scale the OSC with the video.
+ ``no`` tries to keep the OSC size constant as much as the window size allows.
+ ``auto`` scales the OSC with the OSD, which is scaled with the window or kept at a
+ constant size, depending on the ``--osd-scale-by-window`` option.
``valign``
Default: 0.8
@@ -411,13 +408,6 @@ Configurable Options
Whether to display the chapters/playlist at the OSD when left-clicking the
next/previous OSC buttons, respectively.
-``playlist_media_title``
- Default: yes
-
- Whether to display playlist entries in media titles. If set to ``no``, file
- names are used instead. Note that media title of a file is only available
- once it has been loaded.
-
``chapter_fmt``
Default: ``Chapter: %s``
@@ -431,6 +421,71 @@ Configurable Options
Use a Unicode minus sign instead of an ASCII hyphen when displaying