diff options
Diffstat (limited to 'DOCS/man/vo.rst')
-rw-r--r-- | DOCS/man/vo.rst | 125 |
1 files changed, 120 insertions, 5 deletions
diff --git a/DOCS/man/vo.rst b/DOCS/man/vo.rst index 570e244e5c..d1abe1088d 100644 --- a/DOCS/man/vo.rst +++ b/DOCS/man/vo.rst @@ -253,10 +253,22 @@ Available video output drivers are: quality or performance by changing the ``--fbo-format`` option to ``rgb16f``, ``rgb32f`` or ``rgb``. Known problems include Mesa/Intel not accepting ``rgb16``, Mesa sometimes not being compiled with float texture - support, and some OS X setups being very slow with ``rgb16`` but fast + support, and some macOS setups being very slow with ``rgb16`` but fast with ``rgb32f``. If you have problems, you can also try enabling the ``--gpu-dumb-mode=yes`` option. +``gpu-next`` + Experimental video renderer based on ``libplacebo``. This supports almost + the same set of features as ``--vo=gpu``. See `GPU renderer options`_ for a + list. + + Currently, this only supports Vulkan, OpenGL, D3D11 and no hardware + decoding. Unlike ``--vo=gpu``, the FBO formats are not tunable, but you can + still set ``--gpu-dumb-mode=yes`` to forcibly disable their use. + + Should generally be faster and higher quality, but some features may still + be missing or misbehave. Expect (and report!) bugs. + ``sdl`` SDL 2.0+ Render video output driver, depending on system with or without hardware acceleration. Should work on all platforms supported by SDL 2.0. @@ -336,7 +348,7 @@ Available video output drivers are: ``tct`` Color Unicode art video output driver that works on a text console. By default depends on support of true color by modern terminals to display - the images at full color range, but 256-colors outout is also supported (see + the images at full color range, but 256-colors output is also supported (see below). On Windows it requires an ansi terminal such as mintty. Since mpv 0.30.0, you may need to use ``--profile=sw-fast`` to get decent @@ -363,6 +375,104 @@ Available video output drivers are: ``--vo-tct-256=<yes|no>`` (default: no) Use 256 colors - for terminals which don't support true color. +``sixel`` + Graphical output for the terminal, using sixels. Tested with ``mlterm`` and + ``xterm``. + + Note: the Sixel image output is not synchronized with other terminal output + from mpv, which can lead to broken images. The option ``--really-quiet`` + can help with that, and is recommended. + + You may need to use ``--profile=sw-fast`` to get decent performance. + + Note: at the time of writing, ``xterm`` does not enable sixel by default - + launching it as ``xterm -ti 340`` is one way to enable it. Also, ``xterm`` + does not display images bigger than 1000x1000 pixels by default. + + To render and align sixel images correctly, mpv needs to know the terminal + size both in cells and in pixels. By default it tries to use values which + the terminal reports, however, due to differences between terminals this is + an error-prone process which cannot be automated with certainty - some + terminals report the size in pixels including the padding - e.g. ``xterm``, + while others report the actual usable number of pixels - like ``mlterm``. + Additionally, they may behave differently when maximized or in fullscreen, + and mpv cannot detect this state using standard methods. + + Sixel size and alignment options: + + ``--vo-sixel-cols=<columns>``, ``--vo-sixel-rows=<rows>`` (default: 0) + Specify the terminal size in character cells, otherwise (0) read it + from the terminal, or fall back to 80x25. Note that mpv doesn't use the + the last row with sixel because this seems to result in scrolling. + + ``--vo-sixel-width=<width>``, ``--vo-sixel-height=<height>`` (default: 0) + Specify the available size in pixels, otherwise (0) read it from the + terminal, or fall back to 320x240. Other than excluding the last line, + the height is also further rounded down to a multiple of 6 (sixel unit + height) to avoid overflowing below the designated size. + + ``--vo-sixel-left=<col>``, ``--vo-sixel-top=<row>`` (default: 0) + Specify the position in character cells where the image starts (1 is + the first column or row). If 0 (default) then try to automatically + determine it according to the other values and the image aspect ratio + and zoom. + + ``--vo-sixel-pad-x=<pad_x>``, ``--vo-sixel-pad-y=<pad_y>`` (default: -1) + Used only when mpv reads the size in pixels from the terminal. + Specify the number of padding pixels (on one side) which are included + at the size which the terminal reports. If -1 (default) then the number + of pixels is rounded down to a multiple of number of cells (per axis), + to take into account padding at the report - this only works correctly + when the overall padding per axis is smaller than the number of cells. + + ``--vo-sixel-exit-clear=<yes|no>`` (default: yes) + Whether or not to clear the terminal on quit. When set to no - the last + sixel image stays on screen after quit, with the cursor following it. + + Sixel image quality options: + + ``--vo-sixel-dither=<algo>`` + Selects the dither algorithm which libsixel should apply. + Can be one of the below list as per libsixel's documentation. + + auto (Default) + Let libsixel choose the dithering method. + none + Don't diffuse + atkinson + Diffuse with Bill Atkinson's method. + fs + Diffuse with Floyd-Steinberg method + jajuni + Diffuse with Jarvis, Judice & Ninke method + stucki + Diffuse with Stucki's method + burkes + Diffuse with Burkes' method + arithmetic + Positionally stable arithmetic dither + xor + Positionally stable arithmetic xor based dither + + ``--vo-sixel-fixedpalette=<yes|no>`` (default: yes) + Use libsixel's built-in static palette using the XTERM256 profile + for dither. Fixed palette uses 256 colors for dithering. Note that + using ``no`` (at the time of writing) will slow down ``xterm``. + + ``--vo-sixel-reqcolors=<colors>`` (default: 256) + Has no effect with fixed palette. Set up libsixel to use required + number of colors for dynamic palette. This value depends on the + terminal emulator as well. Xterm supports 256 colors. Can set this to + a lower value for faster performance. + + ``--vo-sixel-threshold=<threshold>`` (default: -1) + Has no effect with fixed palette. Defines the threshold to change the + palette - as percentage of the number of colors, e.g. 20 will change + the palette when the number of colors changed by 20%. It's a simple + measure to reduce the number of palette changes, because it can be slow + in some terminals (``xterm``). The default (-1) will choose a palette + on every frame and will have better quality. + ``image`` Output each frame into an image file in the current directory. Each file takes the frame number padded with leading zeros as name. @@ -400,7 +510,7 @@ Available video output drivers are: Specify the directory to save the image files to (default: ``./``). ``libmpv`` - For use with libmpv direct embedding. As a special case, on OS X it + For use with libmpv direct embedding. As a special case, on macOS it is used like a normal VO within mpv (cocoa-cb). Otherwise useless in any other contexts. (See ``<mpv/render.h>``.) @@ -454,8 +564,13 @@ Available video output drivers are: Select the connector to use (usually this is a monitor.) If ``<name>`` is empty or ``auto``, mpv renders the output on the first available connector. Use ``--drm-connector=help`` to get a list of available - connectors. When using multiple graphic cards, use the ``<gpu_number>`` - argument to disambiguate. + connectors. The ``<gpu_number>`` argument can be used to disambiguate + multiple graphic cards, but is deprecated in favor of ``--drm-device``. + (default: empty) + + ``--drm-device=<path>`` + Select the DRM device file to use. If specified this overrides automatic + card selection and any card number specified ``--drm-connector``. (default: empty) ``--drm-mode=<preferred|highest|N|WxH[@R]>`` |