summaryrefslogtreecommitdiffstats
path: root/DOCS/man/options.rst
Commit message (Collapse)AuthorAgeFilesLines
* vo: add new vaapi-wayland driverAaron Boxer2022-05-241-1/+1
| | | | | | | This driver makes use of dmabuffer and viewporter interfaces to enable efficient display of vaapi surfaces, avoiding any unnecessary colour space conversion, and avoiding scaling or colour conversion using GPU shader resources.
* DOCS/options: properly capitalize JPEG XLLeo Izen2022-04-261-3/+3
| | | | | The appropriate style for jxl images is JPEG XL, not Jpeg XL. Update the docs to reflect this.
* video/image_writer: add Jpeg XL screenshotsLeo Izen2022-04-261-0/+11
| | | | | | | Add Jpeg XL as a possible output format for screenshots, which should make it possible to take fast screenshots with much better quality than JPEG, or take lossless high-bit-depth screenshots with lower file sizes than PNG.
* various: fix typosCœur2022-04-251-1/+1
|
* DOCS/options: update the --load-osd-console documentationGuido Cella2022-04-211-4/+3
| | | | | | | | | | - Say built-in which is more common than builtin - Move "By default" because only the key to open the console is customizable, and fix the punctuation and case of the sentence - ` opens the console, not ´ - Remove the sentences that explains which user script console.lua is based on since it's no longer relevant now that the console has been part of mpv for over 2 years.
* options: make --cover-art-auto=exact the defaultGuido Cella2022-04-211-2/+2
| | | | | | | | | Now that a separate --cover-art-whitelist option exists, files like cover.jpg are loaded even without setting --cover-art-auto to fuzzy, so only load files that have exactly the media filename by default, since fuzzy loading is probably more likely to load unwanted images than to load cover art that the user intended to display, especially if you play audio files with a short filename like a.mp3.
* player: add cover-art-whitelist optionGuido Cella2022-04-211-2/+8
| | | | | | | | This allows more fine grained control over which cover art to load. With --cover-art-auto=exact and --cover-art-whitelist=yes, you can now load cover art with the exact media filename and the whitelisted filenames, but not cover art that contains the media filename (--cover-art-auto=fuzzy).
* DOCS: fix the typo of --sub-justifyhooke0072022-04-211-1/+1
|
* DOCS: correct --sub-shadow-colorhooke0072022-04-211-6/+6
|
* DOCS/{mpv,options}: document the watch later functionalityGuido Cella2022-04-211-65/+69
| | | | | | | | | | This adds a section to the documentation to explain how resuming playback works, and in particular it explains how it affects which playlist entry mpv starts playing from, since this feature was only implied in the --playlist-start documentation. It also groups the documentation of the watch later options together to make them easier to find.
* options: add osd-playing-msg-durationGuido Cella2022-04-071-0/+4
|
* vd_lavc: add vo caps and option to set GPU film grain applicationLynne2022-04-051-0/+11
|
* DOCS/options.rst DOCS/vo.rst: Update discussion of hwdec usagePhilip Langdale2022-03-091-45/+54
| | | | | | | | | | | | | The documentation's current discussion of hwdec usage is out of date, and unnecessarily pessemistic when applied to modern hardware. The reality is that modern APIs on modern hardware produce reasonable results and there's no need to pretend otherwise. The current language that tries to drive people away from using hwdecs at all leads to them making bad choices when they do try to use it. Let's also make it clearer that users should use vo=gpu with hwdecs rather than vo=vaapi or vo=vdpau. Even the existing admonitions have proven insufficient, so let's strengthen that language.
* options: add always to stop-screensaverDudemanguy2022-02-181-3/+5
| | | | | | | | | | The stop-screensaver option is currently limited to a simple yes/no option. While the no option does always disable mpv trying to stop the screensaver, yes does not mean the screensaver is always stopped. The screensaver will be enabled again depending on certain conditions (like if the player is paused). Simply introduce a new value for this option, always, which does exactly what the name implies: the screensaver will always be disabled.
* DOCS/options.rst: fix typo (double "aspect")Avi Halachmi (:avih)2022-02-031-1/+1
|
* options: only apply sub-visibility to primary subsDudemanguy2022-01-221-5/+0
| | | | | | | | Previously, the sub-visibility option changed the visibility of all subtitles including secondary ones. This meant that it was not possible to only display secondary subtitles while hiding the primary ones. This modifies the sub-visibility option so that it only affects primary subtitles which allows only secondary subtitles to be displayed.
* Revert "options: add --sub-visibility=<primary-only|secondary-only>"Avi Halachmi (:avih)2022-01-191-1/+10
| | | | | | | | | | This reverts commit 04f0b0abe48d664aaa1400d1dddb02b434999b85. It's not a good idea to unify the names only for visibility, while keeping secondary-* for everything else. This needs a bit more thought before we allow secondary sub to be visible on its own.
* options: add --sub-visibility=<primary-only|secondary-only>Ripose2022-01-191-10/+1
| | | | | | | | | | | | | Adds --sub-visibility choices 'primary-only' for only displaying the primary subtitle track, and 'secondary-only' for only displaying secondary subtitle track. Removes --secondary-sub-visibility and displays a message telling the user to use --sub-visibility=yes/primary-only instead. These changes make it so that the default 'sub-visibility' bind 'v' cycles through all the 'sub-visibility' choices, 'no', 'yes', 'primary-only', and 'secondary-only'.
* vo_gpu: add --tone-mapping-modeNiklas Haas2022-01-071-21/+22
| | | | | | | | | | | This merges the old desaturation control options into a single enumeration, with the goal of both simplifying how these options work and also making this list more extensible (including, notably, new options only supported by vo_gpu_next). For the hybrid option, I decided to port the (slightly tweaked) values from libplacebo's pre-refactor defaults, rather than the old values we had in mpv, to more visually match the look of the vo_gpu_next hybrid.
* vo_gpu: add --gamut-mapping-modeNiklas Haas2022-01-071-19/+18
| | | | | | | Merge --gamut-clipping and --gamut-warning into a single option, --gamut-mapping-mode, better corresponding to the new vo_gpu_next APIs and allowing us to easily extend this option as new modes are added in the future.
* vo_gpu_next: update for new tone mapping optionsNiklas Haas2022-01-071-5/+23
| | | | | | | This was significantly refactored upstream. Switch to new APIs and add new tone mapping curves and options. cf. https://code.videolan.org/videolan/libplacebo/-/merge_requests/212
* {player,video}: remove references to obsolete opengl-cb APIsfan52021-12-151-6/+4
|
* DOCS/options: fix `target-colorspace-hint` typoMehul Mittal2021-11-141-1/+1
|
* vo_gpu_next: implement HDR passthroughNiklas Haas2021-11-081-0/+5
| | | | | | | | Completely untested, since Linux still can't into HDR in 2021. Somebody please make sure it works. Technically covers #8219, since gpu-context=drm can be combined with vo=gpu-next.
* vo_gpu_next: remove --builtin-scalers optionNiklas Haas2021-11-071-6/+0
| | | | | | | | | | | Looking at this again I'm not sure it does anything useful at all. The man page entry is also wrong: `bicubic` is not affected, only `bicubic_fast`, and those filters are not configurable anyways. So this would only ever be a debugging option, and I don't see a pressing need for it. No interface-change.rst update because it only just got added anyways.
* manpage: document --sharpen not affecting vo_gpu_nextNiklas Haas2021-11-031-1/+1
| | | | Fixes https://github.com/mpv-player/mpv/issues/9387
* vo_gpu_next: add new libplacebo-based rendererNiklas Haas2021-11-031-2/+79
| | | | | | | | | | | | | As discussed in #8799, this will eventually replace vo_gpu. However, it is not yet complete. Currently missing: - OpenGL contexts - hardware decoding - blend-subtitles=video - VOCTRL_SCREENSHOT However, it's usable enough to cover most use cases, and as such is enough to start getting in some crucial testing.
* DOCS/options: clarify watch-later-options examplesGuido Cella2021-10-261-3/+3
| | | | | Make it clearer that watch-later-options controls which options are not saved and not which ones are restored.
* vo_gpu: opengl: remove --opengl-restrictEmil Velikov2021-10-161-7/+0
| | | | | | | | | | | | | | | | | | | | As the documentation of the toggle says - the implementation can (and will actually if they follow the GLX/EGL spec) return context version greater than the one requested. This happens with all Mesa drivers that I've tested as well as the Nvidia binary drivers. This toggle seems like a workaround for buggy drivers, yet it's lacking context about the vendor and version. Remove it for now - I'll be happy to reinstate it (partially or in full) as we get concrete details. This allows us to simplify ra_gl_ctx_test_version() making the whole context creation business easier to follow by mere mortals. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* DOCS/options: refine --no-input-default-bindingsAvi Halachmi (:avih)2021-10-111-4/+4
|
* input: new option: --no-input-builtin-bindingsAvi Halachmi (:avih)2021-10-111-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is similar to [no-]input-default-bindings, but affects only builtin bindings (while input-default-bindings affects anything which config files can override, like scripting mp.add_key_binding). Arguably, this is what input-default-binding should have always done, however, it does not. The reason we add a new option rather than repurpose/modify the existing option is that it behaves differently enough to raise concerns that it will break some use cases for existing users: - The new option is only applied once on startup, while input-default-bindings can be modified effectively at runtime. - They affects different sets of bindings, and it's possible that the set of input-default-bindings is useful enough to keep. Implementation-wise, both options are trivial, so keeping one or the other or both doesn't affect code complexity. It could be argued that it would be useful to make the new option also effective for runtime changes, however, this opens a can of worms of how the bindings are stored beyond the initial setup. TL;DR: it's impossible to differentiate correctly at runtime between builtin bindings, and those added with mp.add_key_bindings. The gist is that technically mpv needs/uses two binding "classes": - weak/builtin bindings - lower priority than config files. - "user" bindings - config files and "forced" runtime bindings. input-default-bindings affects the first class trivially, but input-builtin-bindings would not be able split this class further at runtime without meaningful changes to a lot of delicate code. So a new option it is. It should be useful to some libmpv clients (players) which want to disable mpv's builtin bindings without breaking mp.add_key_bindings for scripts. Fixes #8809 (again. the previous fix 8edfe70b only improved the docs, while now we're actually making the requested behavior possible)
* ytdl_hook.lua: search for yt-dlp by defaultGuido Cella2021-09-251-3/+5
| | | | | | | | | | | Because youtube-dl is inactive and the yt-dlp fork is becoming more popular, make mpv use yt-dlp without any extra configuration. yt-dlp is ordered before youtube-dl because it's more obscure, so users who have yt-dlp installed are more likely to want to use it rather than youtube-dl. Fixes #9208.
* DOCS/options: fix minor typo in compute shadersNicolas F2021-08-291-1/+1
| | | | This "bw" should most likely be a "be".
* options: clarify OS support for media keysLaserEyess2021-08-091-2/+9
| | | | | | | | The previous wording gave the false impression that there was no media key support for OSes besides Windows and macOS. This is untrue, the option may only exist on those two platforms but it simply means that media keys will always be enabled on other OSes as long as they are supported.
* wayland: improve behavior with touch eventsDudemanguy2021-08-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | There's currently some touch related code in mpv wayland, but clearly nobody actually uses because it's a broken mess. Initially an attempt to distinguish between two finger touches and one finger touch was made, but there's not a good way to make this work. For whatever reason, initiating either xdg_toplevel_resize or xdg_toplevel_move blocks any other touch events from occurring (at least in plasma). Trying to call these functions anywhere else is not really useful since the serial will be invalid outside of the touch down events (well it would work in the touch up event but that's just silly). Anyways, let's just make this work sanely. Eliminate the touch entries variable completely because it's pointless. Only one finger event is ever considered at a time. Touches besides the initial one are all ignored. If a user touches and drags within the touch edge radius, then a resize event occurs. If the user touches and drags elsewhere on the window, a move event occurs. A single tap displays the osc (which is clickable if you tap again). A double tap toggles fullscreen. Additionally, the default touch edge radius of 64 pixels is way too big (at least I think so). Cut this in half to 32 which feels a lot better (on a pinephone using plasma mobile anyway).
* sub: sub-filter-regex and jsre: support ass-to-plaintextAvi Halachmi (:avih)2021-08-051-1/+7
| | | | | | | | | | | Using --sub-filter-regex-plain (default:no) The ass-to-plaintext functionality already existed at sd_ass.c, but it's internal and uses a private buffer type, so a trivial utility wrapper was added with standard char*/bstr interface. The plaintext can be multi-line, and the multi-line regexp flag is now always set, but only affects plaintext (the ASS source is one line).
* sub: new: --sub-filter-jsre (js regex)Avi Halachmi (:avih)2021-08-051-0/+5
| | | | | | | | | | | | Pretty much identical to filter-regex but with JS expressions and requires only JS support. Shares the filter-regex-* control options. The target audience is Windows users - where filter-regex doesn't work due to missing APIs, but mujs builds cleanly on Windows, and JS is usually enabled in 3rd party Windows mpv builds. Lua could have been used with similar effort, however, the JS regex syntax is more extensive and also much more similar to POSIX.
* options: audio-display determines cover priorityGuido Cella2021-07-291-8/+11
| | | | | | | | | | | | Let audio-display determine whether embedded images or external cover art tracks should be selected when both are present. Attached pictures are given priority by default as requested in #8539. Also updates references to attached pictures in the log and manpage to refer to cover art as well. Closes #8539.
* manpage: fix watch-later-options examplesGuido Cella2021-07-211-2/+3
| | | | | | | | --watch-later-options-remove doesn't accept multiple options, so split the example. Also suggest the more correct -clr to empty the list, and remove the workaround to not print an error with --watch-later-options=
* options: add watch-later-optionsGuido Cella2021-07-211-0/+22
| | | | | | | | | | This allows configuring which options are saved by quit-watch-later. Fixes #4126, #4641 and #5567. Toggling a video or audio filter twice would treat the option as changed because the backup value is NULL, and the current value of vf/af is a list with one empty item, so obj_settings_list_equal had to be changed.
* manpage: minor fixesGuido Cella2021-07-211-1/+1
| | | | | | | | - The video filter to turn the video upside-down is vflip. There is no filter called "flip" so using it just causes an error. - Reword a sentence. - Add exact and all to the values accepted by cover-art-auto. They were implemented in 029ff1049b but not added to the accepted arguments.
* DOCS/options: adds documentation for secondary-sub-visibilityRipose2021-07-121-0/+9
| | | | | | The --secondary-sub-visibility options was previously undocumented in the pull request that added it. This commit adds documentation for it and clarifies its behavior.
* wayland: handle app id option less stupidlyDudemanguy2021-06-261-2/+1
| | | | | | Not sure what I was on when I wrote this. wayland-app-id is supposed to default to "mpv". Just set that in the vo_sub_opts and don't do this weird m_config_cache_write_opt thing. Also make the doc entry nicer.
* sub: by default, don't render timestamps after video EOFrcombs2021-06-231-0/+7
| | | | | | | | | This fixes a long-standing apparent issue where mpv would display the last frame with no subtitles at EOF. This is caused by sub rendering switching from video timestamps to audio timestamps when the video ends, and audio streams often running past the timestamp of the last video frame. However, authoring tools (most notably Aegisub) don't tend to provide easy ways to add meaningful subtitles after the end of the video, so this is rarely actually useful.
* player: change cover-art-auto behaviorGuido Cella2021-06-231-3/+3
| | | | | | | | | | | | | | This makes cover-art-auto behave more like sub-auto and audio-file-auto: - load cover art with a language, e.g. if playing foo.mp3, foo.en.jpg will be loaded with lang=en - load cover art containing the media filename with fuzzy and all, e.g. 'foo (large).jpg' - make all/2 load all images in the directory, and make fuzzy/1 the default These are all uncommon use cases, but synchronizing the behavior of the external file options simplifies the code.
* manpage: add article in fuzzy explanationGuido Cella2021-06-211-2/+2
|
* vo_gpu: vulkan: implement a VkDisplayKHR backed contextPhilip Langdale2021-06-111-0/+29
| | | | | | | | | | | | | | | | | | | | | | | | This is the Vulkan equivalent of the drm context for OpenGL, with the big difference that it's implemented purely in terms of Vulkan calls and doesn't actually require drm or kms. The basic idea is to identify a display, mode, and plane on a device, and then create a display backed surface for the swapchain. In theory, past that point, everything is the same, and this is in fact the case on Intel hardware. I can get a video playing on a vt. On nvidia, naturally, things don't work that way. Instead, nvidia only implemented the extension for scenarios where a VR application is stealing a display from a running window system, and not for standalone scenarios. With additional code, I've got this scenario to work but that's a separate incremental change. Other people have tested on AMD, and report roughly the same behaviour as on Intel. Note, that in this change, the VT will not be correctly restored after qutting. The only way to restore the VT is to introduce some drm specific code which I will illustrate in a separate change.
* docs: fix leftover reference to the now defunct --video-sync-adrop-size optionChris Varenhorst2021-06-041-5/+4
|
* manpage: mention cover-art-autoGuido Cella2021-05-281-2/+3
| | | | | --cover-art-auto affects rescan-external-files, and --autoload-files affects cover art.
* player: load cover art with the media filenameGuido Cella2021-05-271-6/+9
| | | | Closes #8666.
* vo_gpu: replace --icc-contrast by --icc-force-contrastNiklas Haas2021-05-261-8/+9
| | | | | | | | | | | | | | Not only does this have semantics that make far more sense, it also has a default that makes far more sense. (Equivalent to the old `icc-contrast=inf`) This removes the weird 1000:1 contrast default assumption which especially broke perceptual profiles and also screws things up for OLED/CRT/etc. Should probably close some issues but I honestly can't be bothered to figure out which of the thousands colorimetry-related issues are affected.
* DOCS/input.rst: clarify --no-input-default-keybindings docsAvi Halachmi (:avih)2021-05-041-1/+4
| | | | | | | | | | | | | | This commit describes more accurately what currently gets disabled by this option - specifically also keys from mp.add_key_binding. It's not necessarily the best behavior because libmpv clients might want to disable mpv's own builtin keybindings while still allowing scripts to define keys which `input.conf' can override. In the future we might exclude mp.add_key_binding from this option, but for now at least document this option accurately. Fixes #8809
* options: win32: ignore and deprecate --fit-borderAvi Halachmi (:avih)2021-04-231-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The accurate description of this option was: - fit-border is enabled by default. When disabled, it adds a bug where if the window has borders and mpv shrinks it to fit the desktop, then the calculation ignores the borders and adds incorrect video crop. The option was added at commits 70f64f3c and 949247d6, in order to solve an issue (#2935) where if mpv wanted to display a video with size WxH, then w32_common.c incorrectly set the window to WxH, while down-scaling the video slightly to fit (even with small sizes). It was addressed with a new option which is enabled by default, but does the right thing (sets the client area to WxH) only when disabled, so that everyone who prefers their video slightly downscaled could keep their default behavior. (#2935 also addressed an off-by-one issue, fixed before fit-border) While disabling the option did avoid unnecessary downscaling, it also added a bug when disabled: the borders are no longer taken into account when the size is too big for the desktop. Most users don't notice and are unaffected as it's enabled by default. Shortly later (981048e0) the core issue is fixed, and now the client area is correctly set to WxH instead of the window (and together with the three following commits which center the video, adds a new bug where the window title can be outside the display - addressed next). However, fit-border remained, now without any effect, except that it still has the same bug when disabled and the window is too big. Later code changes and refactoring preserved this issue with great attention to details, and it remained in identical form until now. Simply rip out fit-border.
* demux: undeprecate --cache-secssfan52021-04-081-6/+0
| | | | | It serves a purpose and a r