summaryrefslogtreecommitdiffstats
path: root/DOCS/man/en/input.rst
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2014-06-20 23:01:12 +0200
committerwm4 <wm4@nowhere>2014-06-20 23:01:12 +0200
commitf5e175647515b5e34c265dadad524e83c695cc93 (patch)
tree3a8b79e8182dc53a5763d7bb37af0c5b283b8e82 /DOCS/man/en/input.rst
parent199e3b27630ae45cd396b8af4fbb5bcccf0e2456 (diff)
downloadmpv-f5e175647515b5e34c265dadad524e83c695cc93.tar.bz2
mpv-f5e175647515b5e34c265dadad524e83c695cc93.tar.xz
DOCS: remove en/ sub-directory
This additional sub-directory doesn't serve any purpose anymore. Get rid of it.
Diffstat (limited to 'DOCS/man/en/input.rst')
-rw-r--r--DOCS/man/en/input.rst1324
1 files changed, 0 insertions, 1324 deletions
diff --git a/DOCS/man/en/input.rst b/DOCS/man/en/input.rst
deleted file mode 100644
index 9e9863b9db..0000000000
--- a/DOCS/man/en/input.rst
+++ /dev/null
@@ -1,1324 +0,0 @@
-INPUT.CONF
-==========
-
-The input.conf file consists of a list of key bindings, for example::
-
- s screenshot # take a screenshot with the s key
-
-Each line maps a key to an input command. Keys are specified with their literal
-value (upper case if combined with ``Shift``), or a name for special keys. For
-example, ``a`` maps to the ``a`` key without shift, and ``A`` maps to ``a``
-with shift.
-
-A list of special keys can be obtained with
-
- ``mpv --input-keylist``
-
-In general, keys can be combined with ``Shift``, ``Ctrl`` and ``Alt``::
-
- ctrl+q quit
-
-**mpv** can be started in input test mode, which displays key bindings and the
-commands they're bound to on the OSD, instead of executing the commands::
-
- mpv --input-test --force-window --idle
-
-(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
-----------------------------
-
-``[Shift+][Ctrl+][Alt+][Meta+]<key> [{<section>}] [<prefixes>] <command> (<argument>)* [; <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
-``--no-input-right-alt-gr`` changes this behavior.
-
-Newlines always start a new binding. ``#`` starts a comment (outside of quoted
-string arguments). To bind commands to the ``#`` key, ``SHARP`` can be used.
-
-``<key>`` is either the literal character the key produces (ASCII or Unicode
-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.
-
-You can bind multiple commands to one key. For example:
-
-| a show_text "command 1" ; show_text "command 2"
-
-It's also possible to bind a command to a sequence of keys:
-
-| a-b-c show_text "command run after a, b, c have been pressed"
-
-(This is not shown in the general command syntax.)
-
-If ``a`` or ``a-b`` or ``b`` are already bound, this will run the first command
-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.
-
-List of Input Commands
-----------------------
-
-``ignore``
- Use this to "block" keys that should be unbound, and do nothing. Useful for
- disabling default bindings, without disabling all bindings with
- ``--no-input-default-bindings``.
-
-``seek <seconds> [relative|absolute|absolute-percent|- [default-precise|exact|keyframes]]``
- Change the playback position. By default, seeks by a relative amount of
- seconds.
-
- The second argument sets the seek mode:
-
- relative (default)
- Seek relative to current position (a negative value seeks backwards).
- absolute
- Seek to a given time.
- absolute-percent
- Seek to a given percent position.
-
- The third argument defines how exact the seek is:
-
- default-precise (default)
- Follow the default behavior as set by ``--hr-seek``, which by default
- does imprecise seeks (like ``keyframes``).
- exact
- Always do exact/hr/precise seeks (slow).
- keyframes
- Always restart playback at keyframe boundaries (fast).
-
-``revert_seek``
- Undoes the ``seek`` command, and some other commands that seek (but not
- necessarily all of them). Calling this command once will jump to the
- playback position before the seek. Calling it a second time undoes the
- ``revert_seek`` command itself.
-
-``frame_step``
- Play one frame, then pause.
-
-``frame_back_step``
- Go back by one frame, then pause. Note that this can be very slow (it tries
- to be precise, not fast), and sometimes fails to behave as expected. How
- well this works depends on whether precise seeking works correctly (e.g.
- see the ``--hr-seek-demuxer-offset`` option). Video filters or other video
- postprocessing that modifies timing of frames (e.g. deinterlacing) should
- usually work, but might make backstepping silently behave incorrectly in
- corner cases. Using ``--hr-seek-framedrop=no`` should help, although it
- might make precise seeking slower.
-
- This does not work with audio-only playback.
-
-``set <property> "<value>"``
- Set the given property to the given value.
-
-``add <property> [<value>]``
- Add the given value to the property. On overflow or underflow, clamp the
- property to the maximum. If ``<value>`` is omitted, assume ``1``.
-
-``cycle <property> [up|down]``
- Cycle the given property. ``up`` and ``down`` set the cycle direction. On
- overflow, set the property back to the minimum, on underflow set it to the
- maximum. If ``up`` or ``down`` is omitted, assume ``up``.
-
-``multiply <property> <factor>``
- Multiplies the value of a property with the numeric factor.
-
-``screenshot [subtitles|video|window|- [single|each-frame]]``
- Take a screenshot.
-
- First argument:
-
- <subtitles> (default)
- Save the video image, in its original resolution, and with subtitles.
- Some video outputs may still include the OSD in the output under certain
- circumstances.
- <video>
- Like ``subtitles``, but typically without OSD or subtitles. The exact
- behavior depends on the selected video output.
- <window>
- Save the contents of the mpv window. Typically scaled, with OSD and
- subtitles. The exact behavior depends on the selected video output, and
- if no support is available, this will act like ``video``.
-
- Second argument:
-
- <single> (default)
- Take a single screenshot.
- <each-frame>
- Take a screenshot each frame. Issue this command again to stop taking
- screenshots.
-
-``screenshot_to_file "<filename>" [subtitles|video|window]``
- Take a screenshot and save it to a given file. The format of the file will
- be guessed by the extension (and ``--screenshot-format`` is ignored - the
- behavior when the extension is missing or unknown is arbitrary).
-
- The second argument is like the first argument to ``screenshot``.
-
- This command tries to never overwrite files. If the file already exists,
- it fails.
-
- Like all input command parameters, the filename is subject to property
- expansion as described in `Property Expansion`_.
-
-``playlist_next [weak|force]``
- Go to the next entry on the playlist.
-
- weak (default)
- If the last file on the playlist is currently played, do nothing.
- force
- Terminate playback if there are no more files on the playlist.
-
-``playlist_prev [weak|force]``
- Go to the previous entry on the playlist.
-
- weak (default)
- If the first file on the playlist is currently played, do nothing.
- force
- Terminate playback if the first file is being played.
-
-``loadfile "<file>" [replace|append [options]]``
- Load the given file and play it.
-
- Second argument:
-
- <replace> (default)
- Stop playback of the current file, and play the new file immediately.
- <append>
- Append the file to the playlist.
-
- The third 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,..``.
- Not all options can be changed this way. Some options require a restart
- of the player.
-
-``loadlist "<playlist>" [replace|append]``
- Load the given playlist file (like ``--playlist``).
-
-``playlist_clear``
- Clear the playlist, except the currently played file.
-
-``playlist_remove current|<index>``
- Remove the playlist entry at the given index. Index values start counting
- with 0. The special value ``current`` removes the current entry. Note that
- removing the current entry also stops playback and starts playing the next
- entry.
-
-``playlist_move <index1> <index2>``
- Move the playlist entry at index1, so that it takes the place of the
- entry index2. (Paradoxically, the moved playlist entry will not have
- the index value index2 after moving if index1 was lower than index2,
- because index2 refers to the target entry, not the index the entry
- will have after moving.)
-
-``run "command" "arg1" "arg2" ...``
- (Unix only)
- Run the given command. Unlike in MPlayer/mplayer2 and earlier versions of
- mpv (0.2.x and older), this doesn't call the shell. Instead, the command
- is run directly, with each argument passed separately. Each argument is
- expanded like in `Property Expansion`_. Note that there is a static limit
- of (as of this writing) 9 arguments (this limit could be raised on demand).
-
- The program is run in a detached way. mpv doesn't wait until the command
- is completed, but continues playback right after spawning it.
-
- To get the old behavior, use ``/bin/sh`` and ``-c`` as the first two
- arguments.
-
- .. admonition:: Example
-
- ``run "/bin/sh" "-c" "echo ${title} > /tmp/playing"``
-
- This is not a particularly good example, because it doesn't handle
- escaping, and a specially prepared file might allow an attacker to
- execute arbitrary shell commands. It is recommended to write a small
- shell script, and call that with ``run``.
-
-``quit [<code>]``
- Exit the player. If an argument is given, it's used as process exit code.
-
-``quit_watch_later [<code>]``
- Exit player, and store current playback position. Playing that file later
- will seek to the previous position on start. The (optional) argument is
- exactly as in the ``quit`` command.
-
-``sub_add "<file>"``
- Load the given subtitle file. It is not selected as current subtitle after
- loading.
-
-``sub_remove [<id>]``
- Remove the given subtitle track. If the ``id`` argument is missing, remove
- the current track. (Works on external subtitle files only.)
-
-``sub_reload [<id>]``
- Reload the given subtitle tracks. If the ``id`` argument is missing, remove
- the current track. (Works on external subtitle files only.)
-
- This works by unloading and re-adding the subtitle track.
-
-``sub_step <skip>``
- Change subtitle timing such, that the subtitle event after the next
- ``<skip>`` subtitle events is displayed. ``<skip>`` can be negative to step
- backwards.
-
-``sub_seek <skip>``
- Seek to the next (skip set to 1) or the previous (skip set to -1) subtitle.
- This is similar to ``sub_step``, except that it seeks video and audio
- instead of adjusting the subtitle delay.
-
- Like with ``sub_step``, this works with external text subtitles only. For
- embedded text subtitles (like with Matroska), this works only with subtitle
- events that have already been displayed.
-
-``osd [<level>]``
- Toggle OSD level. If ``<level>`` is specified, set the OSD mode
- (see ``--osd-level`` for valid values).
-
-``print_text "<string>"``
- Print text to stdout. The string can contain properties (see
- `Property Expansion`_).
-
-``show_text "<string>" [<duration>|- [<level>]]``
- Show text on the OSD. The string can contain properties, which are expanded
- as described in `Property Expansion`_. This can be used to show playback
- time, filename, and so on.
-
- <duration>
- The time in ms to show the message for. By default, it uses the same
- value as ``--osd-duration``.
-
- <level>
- The minimum OSD level to show the text at (see ``--osd-level``).
-
-``show_progress``
- Show the progress bar, the elapsed time and the total duration of the file
- on the OSD.
-
-``discnav "<command>"``
- Send a menu control command to the DVD/BD menu implementation. The following
- commands are defined: ``up``, ``down``, ``left``, ``right``,
- ``menu`` (request to enter menu), ``prev`` (previous screen),
- ``select`` (activate current button), ``mouse`` (the mouse was clicked),
- ``mouse_move`` (the mouse cursor changed position).
-
- ``mouse_move`` will use the current mouse position.
-
- Note that while the menu is active, the input section ``discnav-menu`` will
- be enabled, so different key bindings can be mapped for menu mode.
-
-``write_watch_later_config``
- Write the resume config file that the ``quit_watch_later`` command writes,
- but continue playback normally.
-
-Input Commands that are Possibly Subject to Change
---------------------------------------------------
-
-``af set|add|toggle|del|clr "filter1=params,filter2,..."``
- Change audio filter chain. See ``vf`` command.
-
-``vf set|add|toggle|del|clr "filter1=params,filter2,..."``
- Change video filter chain.
-
- The first argument decides what happens:
-
- set
- Overwrite the previous filter chain with the new one.
-
- add
- Append the new filter chain to the previous one.
-
- toggle
- Check if the given filter (with the exact parameters) is already
- in the video chain. If yes, remove the filter. If no, add the filter.
- (If several filters are passed to the command, this is done for
- each filter.)
-
- del
- Remove the given filters from the video chain. Unlike in the other
- cases, the second parameter is a comma separated list of filter names
- or integer indexes. ``0`` would denote the first filter. Negative
- indexes start from the last filter, and ``-1`` denotes the last
- filter.
-
- clr
- Remove all filters. Note that like the other sub-commands, this does
- not control automatically inserted filters.
-
- You can assign labels to filter by prefixing them with ``@name:`` (where
- ``name`` is a user-chosen arbitrary identifier). Labels can be used to
- refer to filters by name in all of the filter chain modification commands.
- For ``add``, using an already used label will replace the existing filter.
-
- The ``vf`` command shows the list of requested filters on the OSD after
- changing the filter chain. This is roughly equivalent to
- ``show_text ${vf}``. Note that auto-inserted filters for format conversion
- are not shown on the list, only what was requested by the user.
-
- Normally, the commands will check whether the video chain is recreated
- successfully, and will undo the operation on failure. If the command is run
- before video is configured (can happen if the command is run immediately
- after opening a file and before a video frame is decoded), this check can't
- be run. Then it can happen that creating the video chain fails.
-
- .. admonition:: Example for input.conf
-
- - ``a vf set flip`` turn video upside-down on the ``a`` key
- - ``b vf set ""`` remove all video filters on ``b``
- - ``c vf toggle lavfi=gradfun`` toggle debanding on ``c``
-
-``cycle_values ["!reverse"] <property> "<value1>" "<value2>" ...``
- Cycle through a list of values. Each invocation of the command will set the
- given property to the next value in the list. The command maintains an
- internal counter which value to pick next, and which is initially 0. It is
- reset to 0 once the last value is reached.
-
- The internal counter is associated using the property name and the value
- list. If multiple commands (bound to different keys) use the same name
- and value list, they will share the internal counter.
-
- The special argument ``!reverse`` can be used to cycle the value list in
- reverse. Compared with a command that just lists the value in reverse, this
- command will actually share the internal counter with the forward-cycling
- key binding.
-
- Note that there is a static limit of (as of this writing) 10 arguments
- (this limit could be raised on demand).
-
-``enable_section "<section>" [default|exclusive]``
- Enable all key bindings in the named input section.
-
- The enabled input sections form a stack. Bindings in sections on the top of
- the stack are preferred to lower sections. This command puts the section
- on top of the stack. If the section was already on the stack, it is
- implicitly removed beforehand. (A section cannot be on the stack more than
- once.)
-
- If ``exclusive`` is specified as second argument, all sections below the
- newly enabled section are disabled. They will be re-enabled as soon as
- all exclusive sections above them are removed.
-
-``disable_section "<section>"``
- Disable the named input section. Undoes ``enable_section``.
-
-``overlay_add <id> <x> <y> "<file>" <offset> "<fmt>" <w> <h> <stride>``
- Add an OSD overlay sourced from raw data. This might be useful for scripts
- and applications controlling mpv, and which want to display things on top
- of the video window.
-
- Overlays are usually displayed in screen resolution, but with some VOs,
- the resolution is reduced to that of the video's. You can read the
- ``osd-width`` and ``osd-height`` properties. At least with ``--vo-xv`` and
- anamorphic video (such as DVD), ``osd-par`` should be read as well, and the
- overlay should be aspect-compensated. (Future directions: maybe mpv should
- take care of some of these things automatically, but it's hard to tell
- where to draw the line.)
-
- ``id`` is an integer between 0 and 63 identifying the overlay element. The
- ID can be used to add multiple overlay parts, update a part by using this
- command with an already existing ID, or to remove a part with
- ``overlay_remove``. Using a previously unused ID will add a new overlay,
- while reusing an ID will update it. (Future directions: there should be
- something to ensure different programs wanting to create overlays don't
- conflict with each others, should that ever be needed.)
-
- ``x`` and ``y`` specify the position where the OSD should be displayed.
-
- ``file`` specifies the file the raw image data is read from. It can be
- either a numeric UNIX file descriptor prefixed with ``@`` (e.g. ``@4``),
- or a filename. The file will be mapped into memory with ``mmap()``. Some VOs
- will pass the mapped pointer directly to display APIs (e.g. opengl or
- vdpau), so no actual copying is involved. Truncating the source file while
- the overlay is active will crash the player. You shouldn't change the data
- while the overlay is active, because the data is essentially accessed at
- random points. Instead, call ``overlay_add`` again (preferably with a
- different memory region to prevent tearing).
-
- ``offset`` is the offset of the first pixel in the source file. It is
- passed directly to ``mmap`` and is subject to certain restrictions
- (see ``man mmap`` for details). In particular, this value has to be a
- multiple of the system's page size.
-
- ``fmt`` is a string identifying the image format. Currently, only ``bgra``
- is defined. This format has 4 bytes per pixels, with 8 bits per component.
- The least significant 8 bits are blue, and the most significant 8 bits
- are alpha (in little endian, the components are B-G-R-A, with B as first
- byte). This uses premultiplied alpha: every color component is already
- multiplied with the alpha component. This means the numeric value of each
- component is equal to or smaller than the alpha component. (Violating this
- rule will lead to different results with different VOs: numeric overflows
- resulting from blending broken alpha values is considered something that
- shouldn't happen, and consequently implementations don't ensure that you
- get predictable behavior in this case.)
-
- ``w``, ``h``, and ``stride`` specify the size of the overlay. ``w`` is the
- visible width of the overlay, while ``stride`` gives the width in bytes in
- memory. In the simple case, and with the ``bgra`` format, ``stride==4*w``.
- In general, the total amount of memory accessed is ``stride * h``.
- (Technically, the minimum size would be ``stride * (h - 1) + w * 4``, but
- for simplicity, the player will access all ``stride * h`` bytes.)
-
- .. admonition:: Warning
-
- When updating the overlay, you should prepare a second shared memory
- region (e.g. make use of the offset parameter) and add this as overlay,
- instead of reusing the same memory every time. Otherwise, you might
- get the equivalent of tearing, when your application and mpv write/read
- the buffer at the same time. Also, keep in mind that mpv might access
- an overlay's memory at random times whenever it feels the need to do
- so, for example when redrawing the screen.
-
-``overlay_remove <id>``
- Remove an overlay added with ``overlay_add`` and the same ID. Does nothing
- if no overlay with this ID exists.
-
-``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
- mean is fully up to the receiver and the sender. Every client receives the
- message, so be careful about name clashes (or use ``script_message_to``).
-
-``script_message_to "<target>" "<arg1>" "<arg2>" ...``
- Same as ``script_message``, but send it only to the client named
- ``<target>``. Each client (scripts etc.) has a unique name. For example,
- Lua scripts can get their name via ``mp.get_script_name()``.
-
- (Scripts use this internally to dispatch key bindings, and this can also
- be used in input.conf to reassign such bindings.)
-
-
-Undocumented commands: ``tv_last_channel`` (TV/DVB only), ``stop`` (questionable
-use), ``get_property`` (?), ``vo_cmdline`` (experimental).
-
-Input Command Prefixes
-----------------------
-
-These prefixes are placed between key name and the actual command. Multiple
-prefixes can be specified. They are separated by whitespace.
-
-``osd-auto`` (default)
- Use the default behavior for this command.
-``no-osd``
- Do not use any OSD for this command.
-``osd-bar``
- If possible, show a bar with this command. Seek commands will show the
- progress bar, property changing commands may show the newly set value.
-``osd-msg``
- If possible, show an OSD message with this command. Seek command show
- the current playback time, property changing commands show the newly set
- value as text.
-``osd-msg-bar``
- Combine osd-bar and osd-msg.
-``raw``
- Do not expand properties in string arguments. (Like ``"${property-name}"``.)
-``expand-properties`` (default)
- All string arguments are expanded as described in `Property Expansion`_.
-
-
-All of the osd prefixes are still overridden by the global ``--osd-level``
-settings.
-
-Input Sections
---------------
-
-Input sections group a set of bindings, and enable or disable them at once.
-In ``input.conf``, each key binding is assigned to an input section, rather
-than actually having explicit text sections.
-
-Also see ``enable_section`` and ``disable_section`` commands.
-
-Predefined bindings:
-
-``default``
- Bindings without input section are implicitly assigned to this section. It
- is enabled by default during normal playback.
-``encode``
- Section which is active in encoding mode. It is enabled exclusively, so
- that bindings in the ``default`` sections are ignored.
-
-Properties
-----------
-
-Properties are used to set mpv options during runtime, or to query arbitrary
-information. They can be manipulated with the ``set``/``add``/``cycle``
-commands, and retrieved with ``show_text``, or anything else that uses property
-expansion. (See `Property Expansion`_.)
-
-The property name is annotated with RW to indicate whether the property is
-generally writable.
-
-If an option is referenced, the property will normally take/return exactly the
-same values as the option. In these cases, properties are merely a way to change
-an option at runtime.
-
-Property list
--------------
-
-``osd-level`` (RW)
- See ``--osd-level``.
-
-``osd-scale`` (RW)
- OSD font size multiplicator, see ``--osd-scale``.
-
-``loop`` (RW)
- See ``--loop``.
-
-``loop-file`` (RW)
- See ``--loop-file`` (uses ``yes``/``no``).
-
-``speed`` (RW)
- See ``--speed``.
-
-``filename``
- Currently played file, with path stripped. If this is an URL, try to undo
- percent encoding as well. (The result is not necessarily correct, but
- looks better for display purposes. Use the ``path`` property to get an
- unmodified filename.)
-
-``file-size``
- Length in bytes of the source file/stream. (This is the same as
- ``${stream-end}``. For ordered chapters and such, the
- size of the currently played segment is returned.)
-
-``path``
- Full path of the currently played file.
-
-``media-title``
- If libquvi is used and libquvi returns a page title for the currently
- played URL, return the page title.
-
- Otherwise, if the currently played file has a ``title`` tag, use that.
-
- Otherwise, if the media type is DVD, return the volume ID of DVD.
-
- Otherwise, return the ``filename`` property.
-
-``demuxer``
- Name of the current demuxer. (This is useless.)
-
-``stream-path``
- Filename (full path) of the stream layer filename. (This is probably
- useless. It looks like this can be different from ``path`` only when
- using e.g. ordered chapters.)
-
-``stream-pos`` (RW)
- Raw byte position in source stream.
-
-``stream-end``
- Raw end position in bytes in source stream.
-
-``stream-time-pos`` (RW)
- Time position in source stream. This only works for DVD and Bluray. This
- is probably never different from ``time-pos``, because ``time-pos`` is
- forced to this value anyway.
-
-``length``
- Length of the current file in seconds. If the length is unknown, the
- property is unavailable. Note that the file duration is not always exactly
- known, so this is an estimate.
-
-``avsync``
- Last A/V synchronization difference. Unavailable if audio or video is
- disabled.
-
-``total-avsync-change``
- Total A-V sync correction done. Unavailable if audio or video is
- disabled.
-
-``drop-frame-count``
- Frames dropped because they arrived to late. Unavailable if video
- is disabled
-
-``percent-pos`` (RW)
- Position in current file (0-100). The advantage over using this instead of
- calculating it out of other properties is that it properly falls back to
- estimating the playback position from the byte position, if the file
- duration is not known.
-
-``ratio-pos`` (RW)
- Position in current file (0.0-1.0). higher precision that ``percent-pos``.
-
-``time-pos`` (RW)
- Position in current file in seconds.
-
-``time-start``
- Return the start time of the file. (Usually 0, but some kind of files,
- especially transport streams, can have a different start time.)
-
-``time-remaining``
- Remaining length of the file in seconds. Note that the file duration is not
- always exactly known, so this is an estimate.
-
-``playtime-remaining``
- ``time-remaining`` scaled by the the current ``speed``.
-
-``chapter`` (RW)
- Current chapter number. The number of the first chapter is 0.
-
-``edition`` (RW)
- Current MKV edition number. Setting this property to a different value will
- restart playback. The number of the first edition is 0.
-
-``disc-titles``
- Number of BD/DVD titles.
-
-``disc-title`` (RW)
- Current BD/DVD title number. Writing works only for ``dvdnav://`` and
- ``bd://`` (and aliases for these).
-
-``disc-menu-active``
- Return ``yes`` if the BD/DVD menu is active, or ``no`` on normal video
- playback. The property is unavailable when playing something that is not
- a BD or DVD. Use the ``discnav menu`` command to actually enter or leave
- menu mode.
-
-``chapters``
- Number of chapters.
-
-``editions``
- Number of MKV editions.
-
-``edition-list``
- List of editions, current entry marked. Currently, the raw property value
- is useless.
-
- This has a number of sub-properties. Replace ``N`` with the 0-based edition
- index.
-
- ``edition-list/count``
- Number of editions. If there are no editions, this can be 0 or 1 (1
- if there's a useless dummy edition).
-
- ``edition-list/N/id``
- Edition ID as integer. Use this to set the ``edition`` property.
- Currently, this is the same as the edition index.
-
- ``edition-list/N/default``
- ``yes`` if this is the default edition, ``no`` otherwise.
-
- ``edition-list/N/title``
- Edition title as stored in the file. Not always available.
-
- 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 edition)
- "id" MPV_FORMAT_INT64
- "title" MPV_FORMAT_STRING
- "default" MPV_FORMAT_FLAG
-
-``angle`` (RW)
- Current DVD angle.
-
-``metadata``
- Metadata key/value pairs.
-
- If the property is accessed with Lua's ``mp.get_property_native``, this
- returns a table with metadata keys mapping to metadata values. If it is
- accessed with the client API, this returns a ``MPV_FORMAT_NODE_MAP``,
- with tag keys mapping to tag values.
-
- For OSD, it returns a formatted list. Trying to retrieve this property as
- a raw string doesn't work.
-
- This has a number of sub-properties:
-
- ``metadata/by-key/<key>``
- Value of metadata entry ``<key>``.
-
- ``metadata/list/count``
- Number of metadata entries.
-
- ``metadata/list/N/key``
- Key name of the Nth metadata entry. (The first entry is ``0``).
-
- ``metadata/list/N/value``
- Value of the Nth metadata entry.
-
- ``metadata/<key>``
- Old version of ``metadata/by-key/<key>``. Use is discouraged, because
- the metadata key string could conflict with other sub-properties.
-
- The layout of this property might be subject to change. Suggestions are
- welcome how exactly this property should work.
-
- 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_MAP
- (key and string value for each metdata entry)
-
-``chapter-metadata``
- Metadata of current chapter. Works similar to ``metadata`` property. It
- also allows the same access methods (using sub-properties).
-
- Per-chapter metadata is very rare. Usually, only the chapter name
- (``title``) is set.
-
- For accessing other information, like chapter start, see the
- ``chapter-list`` property.
-
-``vf-metadata/<filter-label>``
- Metadata added by video filters. Accessed by the filter label,
- which if not explicitly specified using the ``@filter-label:`` syntax,
- will be ``<filter-name>NN``.
-
- Works similar to ``metadata`` property. It allows the same access
- methods (using sub-properties).
-
- An example of these kind of metadata are the cropping parameters
- added by ``--vf=lavfi=cropdetect``.
-
-``pause`` (RW)
- Pause status. This is usually ``yes`` or ``no``. See ``--pause``.
-
-``core-idle``
- Return ``yes`` if the playback core is paused, otherwise ``no``. This can
- be different ``pause`` in special situations, such as when the player
- pauses itself due to low network cache.
-
-``cache``
- Network cache fill state (0-100).
-
-``cache-size`` (RW)
- Total network cache size in KB. This is similar to ``--cache``. This allows
- to set the cache size at runtime. Currently, it's not possible to enable
- or disable the cache at runtime using this property, just to resize an
- existing cache.
-
- Note that this tries to keep the cache contents as far as possible. To make
- this easier, the cache resizing code will allocate the new cache while the
- old cache is still allocated.
-
- Don't use this when playing DVD or Bluray.
-
-``paused-for-cache``
- Returns ``yes`` when playback is paused because of waiting for the cache.
-
-``eof-reached``
- Returns ``yes`` if end of playback was reached, ``no`` otherwise. Note
- that this is usually interesting only if ``--keep-open`` is enabled,
- since otherwise the player will immediately play the next file (or exit
- or enter idle mode), and in these cases the ``eof-reached`` property will
- logically be cleared immediately after it's set.
-
-``pts-association-mode`` (RW)
- See ``--pts-association-mode``.
-
-``hr-seek`` (RW)
- See ``--hr-seek``.
-
-``volume`` (RW)
- Current volume (0-100).
-
-``mute`` (RW)
- Current mute status (``yes``/``no``).
-
-``audio-delay`` (RW)
- See ``--audio-delay``.
-
-``audio-format``
- Audio format as string.
-
-``audio-codec``
- Audio codec selected for decoding.
-
-``audio-bitrate``
- Audio bitrate. This is probably a very bad guess in most cases.
-
-``audio-samplerate``
- Audio samplerate.
-
-``audio-channels``
- Number of audio channels. The OSD value of this property is actually the
- channel layout, while the raw value returns the number of channels only.
-
-``aid`` (RW)
- Current audio track (similar to ``--aid``).
-
-``audio`` (RW)
- Alias for ``aid``.
-
-``balance`` (RW)
- Audio channel balance. (The implementation of this feature is rather odd.
- It doesn't change the volumes of each channel, but instead sets up a pan
- matrix to mix the the left and right channels.)
-
-``fullscreen`` (RW)
- See ``--fullscreen``.
-
-``deinterlace`` (RW)
- See ``--deinterlace``.
-
-``colormatrix`` (RW)
- See ``--colormatrix``.
-
-``colormatrix-input-range`` (RW)
- See ``--colormatrix-input-range``.
-
-``colormatrix-output-range`` (RW)
- See ``--colormatrix-output-range``.
-
-``ontop`` (RW)
- See ``--ontop``.
-
-``border`` (RW)
- See ``--border``.
-
-``framedrop`` (RW)
- See ``--framedrop``.
-
-``gamma`` (RW)
- See ``--gamma``.
-
-``brightness`` (RW)
- See ``--brightness``.
-
-``contrast`` (RW)
- See ``--contrast``.
-
-``saturation`` (RW)
- See ``--saturation``.
-
-``hue`` (RW)
- See ``--hue``.
-
-``hwdec`` (RW)
- Return the current hardware decoder that is used. This uses the same values
- as the ``--hwdec`` option. If software decoding is active, this returns
- ``no``. You can write this property. Then the ``--hwdec`` option is set to
- the new value, and video decoding will be reinitialized (internally, the
- player will perform a seek to refresh the video properly).
-
- Note that you don't know the success of the operation immediately after
- writing this property. It happens with a delay as video is reinitialized.
-
-``panscan`` (RW)
- See ``--panscan``.
-
-``video-format``
- Video format as string.
-
-``video-codec``
- Video codec selected for decoding.
-
-``video-bitrate``
- Video bitrate (a bad guess).
-