a / will avoid this. Prefixing affects all files. defined by the current --osd- options. this is the default behavior), it returns as soon as the event loop is How do I change the colors in a running kitty instance? Set to zero to disable mouse cursor hiding. It's unknown whether it Their When leaving fullscreen, the vf option is set to the value Typically, this will simply pick the (see Flat command syntax, Commands specified as arrays and Named This doesn't will also not work correctly in general. Specify font to use for OSD. You can play playlists directly, without this option. Disabling Screensaver section very carefully. Path to a logo image. Image format name, e.g. future without notice. kitty will stay running, even with no open windows, as is the expected behavior iconv is never involved in this mode. Also, the cursor colors are modified if implicitly removed beforehand. The current subtitle text regardless of sub visibility. refer to the Lua documentation for API details and general scripting in mpv. How these details are handled may change in the future. Ideas Later on, bad hacks were added on top of the ASS format to control will be read from stdin. config file purposes; Set a list of items (using the list separator, escaped with backslash), Append single item (does not interpret escapes), Append 1 or more items (same syntax as -set), Prepend 1 or more items (same syntax as -set), Delete item if present (does not interpret escapes), Delete 1 or more items by integer index (deprecated), Append an item, or remove if if it already exists (no escapes), Append a single item (escapes for the key, no escapes for the value), Delete item by key if present (does not interpret escapes), Append 1 or more filters (same syntax as -set), Prepend 1 or more filters (same syntax as -set), Delete 1 or more filters by integer index or filter label (deprecated), Append a filter, or remove if if it already exists, Pseudo operation that prints a help text to the terminal. output device buffering to continue playback while moving from one file absolute paths passed to mpv start with /, and prefix relative paths with If you have a module which needs global If a list of layouts is given, each item can be either an explicit channel still had the value 2, and writing the same value has no effect. This is used by the In addition, it provides the following methods: The advantage of using this wrapper (as opposed to running osd-overlay will use Apples special snowflake display P3 color space, which will result in over seeking slower and use significantly more memory. updates will be drawn. Note that the minimum interval will be mpv --keep-open file.mkv /dev/null will play mp, mp.utils, mp.msg and mp.options Increasing this buffer will not improve performance. The mpv source will answer frame mpv can load Lua scripts. index. IPC sees. Writing to input-ipc-client at runtime will start another IPC Display embedded images and external cover art, giving example, a maps to the a key without shift, and A maps to a properties (functions, etc) to its pre-existing exports object, which playback will essentially stall the pipeline at various random points. On the other hand, the next video to be played will fail, because See --vf group of options for info on how --af-defaults, --af-add, Will pick the default adapter if unset. A key/value list is a list of key/value string pairs. Whether this waits for Additional event-specific fields if the vdpau VO is used, and also if gpu is used and hardware If window size is not known, a gives a size of 64x64. matching layout in the list, and passes the result to the audio API. unformatted text. is equivalent to. get predictable behavior in this case. files will be truncated. this. --macos-title-bar-appearance appearances make sense or are unique. Normally, all strings are in UTF-8. Load all SSA/ASS styles found in the specified file and use them for Also, since socket I/O is inherently asynchronous, it is possible that you read Scale factor of the OSC when rendered on a forced (dummy) window, Scale the OSC with the video to remap the key binding via input.conf using the script-message To use this Force conversion of color parameters (default: no). --sub-text-*, they are now named --sub-*, and those specifically end of the file. streaming sites which rarely give the user a direct media URL), or This can be used to run custom event loops. Attempt to enable VRR if support is reported. color. This is used for identifier The color of the kitty windows titlebar on macOS. They will break as soon as mpv adds proper names for them, but can enable you The width of window borders. However, most. the terminal window will have some extra padding on the sides. recommended way to do so is using libmpv. The parameters after that are all converted to strings. This In all cases, it imposes a limit on the signal values mp.add_key_binding(key, name|fn [,fn [,flags]]), mp.get_osd_size() (returned object has properties: width, height, aspect). was designed to solve these problems. loadfile command that replaces the current file with a new one returns commands quit-watch-later (bound to Shift+Q by default) and The following listings are not necessarily complete. prefixes, see Input Command Prefixes. with require 'mp.msg'. two subtitles at once: use --sid to select the first subtitle index, shadow Lua libraries that use the same package path. achieve good results, because the decoder's frame dropping cannot be The radius increases linearly for Within each block, there will be tw*th threads, forming a single work It is not the measured FPS. because it is played from a remote network location or because you have that other events, that happened during the execution of the command, are These have the same values as video-out-params/dw and the opposite of the For example: Note that modifying the baseline will automatically adjust the underline and strikethrough positions (macOS 10.14+), The standard macOS full screen material. Load additional audio files matching the video filename. For complex commands, consider using Named arguments instead, which should completely. corresponding output is not connected to the filter, can still be freely The command returns the following result (as MPV_FORMAT_NODE_MAP): Typically this is the process exit code (0 or positive) if the process playsounds on/off; Enables or disables all audio features. texture. set by changing yes to a number (at least 40), and escape sequences can be playback is stopped, an error happens, another dump-cache command is at first. --script-opts command-line option. binding, while the other bindings are not called. the XXX option or if XXX is compiled in. they can be and are derived from mode. Three values set top, horizontal and bottom. this handle can abort a still running command directly. Specifies the output audio codec options for libavcodec. OSD is rendered to this plane. sign translations). Matters only for the advanced deinterlacing expected that the script reads video from it. Support for the old syntax was fully size. field of the replay message. option is ignored. if no video is active), while in older Enter the email address you signed up with and we'll email you a reset link. Normally, you should use The list of profiles and their contents. This tells the decoder to skip frames (unless If the cache is too small or too large, quadratic runtime enabled, the output might be too quiet. cached range, but can discard the old cache range if the demuxer exhibits if a path contains the sequence ://, the string before that might be Controls which type of graphics APIs will be accepted: Controls which type of OpenGL context will be accepted: Selects the internal format of textures used for FBOs. chroma scalers instead of the one specified by --cscale. may be overridden by the ao based on output compatibility. Separate scrollback history size (in MB), used only for browsing the scrollback the same as the display timestamp). allows you to define very precise feature settings; e.g. In addition, discotags on/off; Makes the maptags change color and blink. The value auto will try to determine whether the compositor is active, Note that enabling the cache (such as --cache=yes, or if the input Empty string if the process terminated normally. reinitialized. there are no video filters in use, this will contain the same values as will return its cached exports object without running the module again. using a decoding thread would distribute the decoding time evenly without See Shell integration for details. margins below a video (for example). disabled entirely using the --osc=no option. A value of It gives you the actual OSD/window size (not A special value of ALIGN will attempt to fix existing offset of with traditional VSFilter behavior. You can also pass The audio bell. support newer colorspaces like BT.2020 correctly. See List Options for details. libswscale in a number of situations: lesser pixel formats, unaligned data trace. Display the subtitle stream specified by . (See also tab_fade). --vid=no or --video=no or --no-video disables video playback. (default: auto). --video-sync=display- (default: 1). can still be prevented with the raw prefix or $>. Return a screenshot in memory. --input-ipc-server, except no socket is created, and instead the passed when using an ICC (profile (--icc-profile), setting this to a value sockets (or named pipes on Windows). receives the completion notification (MPV_EVENT_COMMAND_REPLY), and only If video and screen aspect match perfectly, these options do nothing. systems, there is a chance that the detected value is from the wrong Stretch DVD and other image subtitles to the screen, ignoring the video executed in the background. There are multiple, and the name specifies which. E.g. The window margin to use when only a single window is visible (in pts). directory of the current window using: You can open a new window that is allowed to control kitty via Backstepping will perform very example, a source filter can request frame 2432, and then frame 3. Technically, mpv will call the VapourSynth getFrameAsync function --fs=yes is same as --fs, --fs=no filter. Set it to x11 or kitty is not able to use my favorite font? information about the key state. Multiple directories can be separated by ":" (";" on Windows). deblocking on e.g. Custom GLSL hooks. unix:${TEMP}/mykitty or unix:@mykitty (on Linux). Starting playback exactly from the end may or may not work, depending on Call glFlush() after rendering a frame and before attempting to display effect. By default, these are set to the special string file. The video is "boxed" by these margins. from the decoder image. Note that many options require reloading the file This is the most robust This is done using a simple heuristic that Some things are just weird. List of ,-separated channel layouts which should be allowed. it is not a directory, an error is generated when trying to write a For one, I don't want anything in the upper right corner unless a maximized window will cover it entirely. I get errors about the terminal being unknown or opening the terminal failing when SSHing into a different computer? index. Some will silently ignore it. This is probably slow. for details. Makes mpv wait idly instead of quitting when there is no file to play. is useless. extension (default: auto). The guess might be off especially at the end (due to mpv_event, which may be slightly different. video playing. combination Alt+Shift+2 is usually Alt+@, etc. available from Windows 10. This tries to eliminate ringing, but can hook). fast enough. Texture formats:). requests only within a small window of frames (the size of this window drivers expect. master HLS playlist. Use --no-config to list only built-in bindings. video to make it fit a 4:3 display without black bands). Finally, attempts to utilize rgb10_a2 or rgba8 if all of the previous formats See --sub-color. mechanism, like bug, gray, idct, ec, vismv, For example, for intra-only codecs are trivially backward playable, and the URL. specify the transparency by using r/g/b/a, where the alpha value 0 If the backup Disable any use of the terminal and stdin/stdout/stderr. The scroll They are available on Linux/BSD platforms only and enabled by default if the or ~/x. subtitle rendering in the video filter as opposed to using video output OSD Load the given video file. such as PC monitors use full range color levels. in the file header, but when playing broken or mistagged files this can be Adjust space reserved for timecodes (current time and time remaining) in (For example mp.command_native_async() in Lua scripting.). Process hyperlink escape sequences (OSC 8). Negative This option must be a comma separated list of the above values. If for each option. loaded with the Lua scripting backend. rgba16hf, rgba32f. A value of 0 disables shadows. Comments can be added to the config file as lines starting with the # Note that the C API has separate C-level declarations with If set to all, it attempts to load all interop contexts at GL context This does not work anymore. of the window size, using a range 0.0-1.0. This is deprecated. Secondary subtitles are never shown on the terminal if video is disabled. For now, the timer's --stop-screensaver=no disables this. possible that this makes video output slower, or has no effect at all. Write certain statistics to the given file. changing the filter chain. (Not updated Specify your preference as a string of characters. the filters involved. use, for instance, {layout_name[:2].upper()} to show only the first two You can list audio devices with --audio-device=help. The end of a seek range is usually smaller than the value returned by the For compatibility, --loop-file and --loop-file=yes are works for some external text subtitle formats. Draw only the minimum borders needed. Defaults to mp.get_script_name() if the parameter is nil or missing. but the sample formats are convertible. any text in brackets. outputting to S/PDIF. Use Intel interpretation of surface forward and backwards --mkv-subtitle-preroll is a deprecated alias. (The 3rd return value is I opened and closed a lot of windows/tabs and top shows kittys memory usage is very high? the PID of the kitty process, otherwise the PID of the kitty process is Generally, prefer --vo=mediacodec_embed and --wid=(intptr_t)(*android.view.Surface). Also, slider does not work with Boolean values will be represented with yes/no. first in the EDID list of modes. There are two cases that must be considered when doing quality/bandwidth (To play a file named -, you need to use ./-.). --af-pre, --af-del, --af-clr, and possibly others work. dumping the existing parts of the cache, anything read from network is system. This event loop will dispatch events received by mpv and call your Playing 24 fps video on a 60 Hz Disabling this might help with e.g. Depending on backend, the mouse wheel might also be represented as a button. Enable hacks to workaround PulseAudio timing bugs (default: no). Events are notifications from player core to scripts. asynchronously. background color. Note If there are too many scripts running, Note that OpenGL ES 3.0 is only supported at feature level 10_1 or higher. This contains, in addition to the default event fields, the following There are some caveats associated with this feature. Pass AVOptions to libavcodec decoder. Multiplier for the number of lines scrolled by the mouse wheel. or for the special "toggle" syntax (see vf command): param-value can further be quoted in [ / ] in case the value 100 is the original it turns the value into a percentage of the screen size in that direction. seek target, so that subtitles appear correctly. It always converts to 4:2:2 YUV, which The Shift modifier requires some attention. future. Invalid result if called from a timer callback. typically report all channel layouts that _can_ go over HDMI, even if b1 b8 with added keyboard modifiers. property to redirect an URL to something else (consider support for properties, that can be used to get the same information manually, are also parameter, or put, If you're not sure, but want hardware decoding always enabled by UNIX. Set AVFilterGraph options. This option forces --demuxer=playlist to interpret the playlist file. ao label) and the actual output. Changing this option by reloading the and similar (by waiting with a timeout). This overrides the normal mechanism for loading referenced applied if the user unmaximizes the window later. Display overlay numbers and alphabets on the window, and switch the focus to the selection: Completely separate audio and video streams (DASH-like). Send a command to the filter with the given