summaryrefslogtreecommitdiffstats
path: root/etc
Commit message (Collapse)AuthorAgeFilesLines
* player: always notify when writing window-scale optionDudemanguy4 hours1-3/+3
| | | | | | As described in the previous commit, update_window_scale will always execute whenever window-scale is written even if the value doesn't change.
* mpv.desktop: translate to ItalianGuido Cella2024-04-011-1/+3
|
* builtin.conf: remove debanding from the high-quality profileKacper Michajłow2024-03-191-1/+0
| | | | | | | | | | | | | | | Debanding is an inherently destructive process. It is not needed for most high-quality sources and only produces an adverse smoothing effect when applied to fine-detailed content, removing detail. It should only be applied when necessary, either manually with the `b` keybind or with an automatic profile. Additionally, it is quite computationally heavy with no real benefit for high-quality content. By default, and especially in the high-quality profile, mpv should preserve source detail and quality as much as possible. Additional processing should be opt-in.
* input.conf: add `b` to toggle debandingKacper Michajłow2024-03-191-0/+1
|
* various: make mentions of macOS consistentder richter2024-02-211-1/+1
| | | | | change all mentions and variations of OSX, OS X, MacOSX, MacOS X, etc consistent. use the official naming macOS.
* input.conf: bind Ctrl+WHEEL_UP/DOWN to video-zoomnanahi2024-02-211-0/+2
| | | | | | | | | | | | | | | | | | | There are good reasons to bind Ctrl+WHEEL_UP/WHEEL_DOWN to video-zoom: - They are ubiquitous and familiar key bindings to represent zooming operations, which are used in all popular web browsers, document viewers, and document editors. - Because WHEEL_UP/WHEEL_DOWN are scaled with high-resolution scrolling input devices like touchpads, this allows smooth zooming. - This makes "pinch to zoom" with touchpads and touchscreens work out of box on Windows, since by default applications receive these key inputs for pinch gesture. - It had been considered to bind these keys to window-scale instead. However, this results in horrible UX as the keybinds work only when the mouse pointer is over the mpv window, and if the window shrinks during this operation, the window below mpv now receives these keybinds, resulting in unwanted zooming for that window, which violates the principle of least surprise.
* player: add an auto option to deinterlaceDudemanguy2024-02-071-1/+1
| | | | | | | | | | Deinterlacing required that the user set it on/off themselves, but we actually have handy flags for detecting if a frame is interlaced. So it's pretty simple to make an auto option using that. Unfortunately, life is not quite that simple and there are known cases of false positives from the ffmpeg flags so we can't make auto the default value. However, it still may have some utility for some people, and the detection could potentially be improved upon later. Closes #10358.
* bash-completion: parse the mpv options lazilyGabriele Mazzotta2024-01-211-9/+30
| | | | | Parse and cache the options lazily not to impact the shell startup time.
* etc/mpv.desktop: add audio/vnd.wave and video/vnd.aviVonfry2023-12-121-1/+1
|
* mpv.desktop: add keywordsMateusz Łukasik2023-12-041-0/+1
|
* zsh-completion: complete options after --helpGuido Cella2023-11-151-0/+8
|
* options: rename --screenshot-directory to --screenshot-dirDudemanguy2023-10-251-1/+1
| | | | | Less characters is better? Other options use -dir for directory so consistency I guess.
* options: disable --allow-delayed-peak-detect by defaultKacper Michajłow2023-10-251-1/+1
| | | | | | Peak detection greatly increases HDR experience. Performance hit of non-delayed detection is not that significant and is in line with current default settings.
* restore-old-bindings.conf: remove unusable bindingsGuido Cella2023-10-011-11/+4
| | | | | | | | | | | | | | | | | Remove keybindings for properties that have been removed because they can no longer be used even if you restore them. Replace dvb-channel-name with dvbin-channel-switch-offset. Fix the L keybinding: it was bound to cycle-values loop when loop was an alias for loop-playlist, but now it's an alias for loop-file. "osd" was a command that cycles osd-level from 0 to 3. Keep only the newest I show-text "${filename}" from mpv 0.26, the mpv 0.5 line for it is a mistake because it was bound to that in input.conf from a749c61437 (2012) until 2e84934be7 (2017), while mpv 0.5 is from 2014.
* restore-old-bindings.conf: add the old wheel bindingsGuido Cella2023-09-271-2/+7
| | | | | | I removed the previous WHEEL_UP and WHEEL_DOWN bindings because they are duplicate, and it appears that they were already bound to seek 10 before 7897f79217af.
* input.conf: make `u` toggle between force and yesllyyr2023-09-251-1/+1
| | | | | | | | There was a discrepancy in what the keybind was advertised to do in the manual, and what the comment in input.conf described it to be doing. It makes very little sense to add a keybind that changes the default and doesn't allow you to get back to the default. This keybind is much more useful if it toggles between yes/force instead of no/force.
* vo_gpu: remove --scaler-lut-sizeNiklas Haas2023-09-251-1/+0
| | | | | | | Pointless bloat option, hard-coded as 256 now in libplacebo and no reason not to also hard-code in mpv. See-Also: haasn/libplacebo@64d7c5aab06766a9492d3cfffd35333792052cd9
* builtin.conf: remove unneeded vlang/alang/slang linesDudemanguy2023-09-211-6/+0
| | | | | | | | ac725764ec6dec30aa7c9aa2d4804699c7f6349a originally added these to prevent those profiles from having auto as a value. However the auto value was removed in 53d032374d9f8fdfca260ed9a67190c37159f7c2 later. So having these lines here no longer serves any purpose since the default value for slang is NULL once again (vlang/alang were never needed here).
* builtin.conf: remove deprecated opengl-hq profileDudemanguy2023-09-211-4/+0
| | | | | Deprecated in 65979986a923a8f08019b257c3fe72cd5e8ecf68. 6 years is more than enough time.
* DOCS: update notes about new profilesKacper Michajłow2023-09-201-3/+8
|
* builtin.conf: modernize internal profilesKacper Michajłow2023-09-191-8/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The goal is to provide simple to understand quality/performance level profiles for the users. Instead of default and gpu-hq profile. There main profiles were added: - fast: can run on any hardware - default: balanced profile between quality and performance - high-quality: out of the box high quality experience. Intended mostly for dGPU. Summary of three profiles, including default one: [fast] scale=bilinear cscale=bilinear (implicit) dscale=bilinear dither=no correct-downscaling=no linear-downscaling=no sigmoid-upscaling=no hdr-compute-peak=no [default] (implicit mpv defaults) scale=lanczos cscale=lanczos dscale=mitchell dither-depth=auto correct-downscaling=yes linear-downscaling=yes sigmoid-upscaling=yes hdr-compute-peak=yes [high-quality] (inherits default options) scale=ewa_lanczossharp cscale=ewa_lanczossharp (implicit) hdr-peak-percentile=99.995 hdr-contrast-recovery=0.30 allow-delayed-peak-detect=no deband=yes scaler-lut-size=8
* {zsh,bash}-completion: use config when autocompleting profilesPhilip Langdale2023-09-032-3/+12
| | | | | | | | We were over-enthusiastic when introducing --no-config into the autocompletions. When autocompleting profiles, you actually need the config, because that's where the profiles come from. zsh is untested - I don't use it.
* {zsh,bash}-completion: add missing --no-config flagsNiklas Haas2023-09-022-6/+6
| | | | | | Seemingly forgotten, even though the intent was to add them. Fixes: 15252e13d5bb367a8f86ffbc5474488b841dc96c
* builtin.conf: add --allow-delayed-peak-detect=no to gpu-hqNiklas Haas2023-09-011-0/+1
| | | | | | | | Prevents transient brightness spikes on scene transitions at the cost of sometimes forcing an extra indirect pass (in particular, when downscaling). But on GPUs powerful enough to run gpu-hq, the extra indirect pass shouldn't matter too much. This option mostly exists for weak iGPUs.
* input.conf: swap wheel up/down with wheel left/rightNiklas Haas2023-08-291-4/+4
| | | | | | | | | Wheel being seek by default is very unintuitive and surprising to a lot of users. It seems to be one of the things most consistently complained about in the default UI. I change this on all of my devices, and so do many others. It's trivial for users who like the old behavior to change it back.
* player: rename --sub-forced-only to --sub-forced-events-onlyDudemanguy2023-08-292-2/+2
| | | | | | | | The old name is pretty bad and users mistakenly think it has something to do with selecting forced subtitles (that would be --subs-fallback-forced). Instead of giving it such a generic name, make it clearer that this has to do specifically with forced sub events which is only relevant for a small minority of subtitles.
* input: add new keys: Back, Tools, ZoomIn, ZoomOutJames Cuzella2023-08-231-0/+2
| | | | | | | | | | | | | | | | | These were the only keys missing to support mapping all keycodes on a [popular RF Remote][1] used with Linux HTPC apps. Note that X11/XWayland + xkbcomp still warns about keycodes > 255, due to the 8-bit limit in Xorg but `mpv` on Wayland is able to handle these. For X11 users, there are [a couple options][2]: - [Gianni Ceccarelli's patched `xf86-input-evdev`][3] - [Use udev hwdb to map scancodes to keycodes][4] [1]: https://www.mythtv.org/wiki/Air_mouse_rf_remote [2]: https://unix.stackexchange.com/a/436233/7688 [3]: https://www.thenautilus.net/SW/xf86-input-evdev/ [4]: https://wiki.archlinux.org/title/Map_scancodes_to_keycodes
* builtin.conf: add --hdr-peak-percentile=99.995 to gpu-hqNiklas Haas2023-08-041-0/+1
| | | | | | This is higher quality but comes with a slight performance hit, especially for weaker iGPUs, so I don't want to enable it out of the box even when --hdr-compute-peak=auto.
* build: remove outdated generated directoryDudemanguy2023-07-311-0/+20
| | | | | | | | | | | | | | | | This only existed as essentially a workaround for meson's behavior and to maintain compatibility with the waf build. Since waf put everything in a generated subdirectory, we had to put make a subdirectory called "generated" in the source for meson so stuff could go to the right place. Well now we don't need to do that anymore. Move the meson.build files around so they go in the appropriate place in the subdirectory of the source tree and change the paths of the headers accordingly. A couple of important things to note. 1. mpv.com now gets made in build/player/mpv.com (necessary because of a meson limitation) 2. The macos icon generation path is shortened to TOOLS/osxbundle/icon.icns.inc.
* {zsh,bash}-completion: run mpv with --no-configsfan52023-07-192-2/+2
| | | | | | | Reading the config when we're just interested in the option list (not sure why mpv does that anyway) only has the potential to mess this process up when it prints errors or the user has funny options like msg-level or log-file set, so avoid doing so.
* bash-completion: do not complete removed optionssfan52023-07-191-3/+6
|
* zsh-completion: do not complete removed optionssfan52023-07-191-0/+4
|
* builtin.conf: add --hdr-contrast-recovery to gpu-hqNiklas Haas2023-07-181-0/+1
| | | | The first change to the gpu-hq profile in aeons.
* builtin.conf: unset default languages in libmpv and encode profilesrcombs2023-07-181-0/+6
| | | | The `auto` behavior doesn't really make sense in these contexts.
* input: update ctrl+h to toggle `auto-safe` rather than `auto`Philip Langdale2023-07-141-1/+1
| | | | | | | | | | | | | It has been odd that ctrl+h toggles `auto` for hwdecs even though we always recommend people start with `auto-safe`, and `auto` will attempt various hwdecs that can fail so badly we can't fall back to software decoding. With the change to more exhaustively attempt to use hwdecs, it is now easier to get into situations where these fragile hwdecs will get attempted in basic scenarios, like pressing ctrl+h. So it is high time to default to `auto-safe`.
* mpv.desktop: add Russian translation for GenericNameOlesyaGerasimenko2023-06-081-1/+2
| | | | | Added Russian translation for "GenericName", updated Russian translation for "Comment".
* stream: accept webdav:// and webdavs:// urlsAlby2023-01-311-1/+1
| | | | | | Treat them as http:// and https:// respectively. This allows to play files on webdav archives directly on KDE, avoiding the (extremely slow) local copying performed by kio.
* mpv.metainfo.xml: add XDG appstream metadata manifestVitaly Zaitsev2022-09-091-0/+29
|
* mpv.desktop: add RIST protocol to desktop entryThe-head-obamid2022-08-181-1/+1
|
* mpv.desktop: add japanese translationDudemanguy2022-04-211-0/+3
|
* mpv.desktop: add turkish translationOğuz Ersen2022-04-081-0/+3
|
* Revert "options: add --sub-visibility=<primary-only|secondary-only>"Avi Halachmi (:avih)2022-01-191-0/+1
| | | | | | | | | | 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-1/+0
| | | | | | | | | | | | | 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'.
* input.conf: remove redundant commentsGuido Cella2021-09-061-25/+25
|
* bash completion: Allow completions to work without external functionsArthur Williams2021-09-051-4/+3
| | | | | | | | | | If bash_completion wasn't installed, _filedir wouldn't be defined which led to all filename-based completions to error out. Specifically autocompletion would fail when a filename was expected and when bash_completion wasn't installed. Now we fall back to `compgen -f` if _filedir fails. According to _filedir's comments, compgen doesn't handle files with spaces well, but it is still better to complete most files than none.
* input.conf: remove bindings of removed propertiesGuido Cella2021-08-191-2/+0
| | | | angle was removed in a9d83eac40, and program in a75b249b0b.
* input.conf: add commentsGuido Cella2021-08-191-132/+122
| | | | These will be shown in the new keybinding list.
* desktop entry: fix duplication of the app icon in a dock like PlankStan Janssen2021-08-121-0/+1
| | | | | | | | | Without this entry, when starting mpv as a flatpak application on elementaryOS, the Dock icon would get duplicated, as if the application was detached from its launcher. This entry fixes that by allowing the dock to associate the app's window with the desktop entry. Fixes #9109
* command: make current-window-scale writeable, 2nd attemptDudemanguy2021-08-071-3/+3
| | | | | | | | | | | | | | | | | | | | | | The window-scale property mirrors the respective option (not the effective scale derived from the current window size), and as such setting its value to the same value it had before has no effect. Specifically - the window will not resize. This is consistent as far as property-option bridge behavior goes, but we do end up with an issue that we can't set an arbitrary scale and expect the window to always resize accordingly. We do also have a current-window-scale property which does reflect the actual window size, however, it's been read-only till now. This commit makes current-window-scale RW so that it's now always possible to set an arbitrary scale and expect the window to resize accordingly (without affecting window-scale - like manual resize). Also, mention window-scale no-effect-if-not-changed at the docs. Based on code by @Dudemanguy from commit 873ae0d, with same effect.
* Revert "command: make current-window-scale writeable"Avi Halachmi (:avih)2021-08-071-3/+3
| | | | | | | | | | | This reverts commit 873ae0de2af3bb84a11e5e57f6e3a8942b2263c2. The next commit will restore this functionality, with the following differences from the reverted commit: - Smaller and simpler code change. - On bad scale: use "Invalid value" (compared to "no such property"). - Doesn't combine the docs for window-scale and current-window-scale. - Doesn't remove the docs for window-scale behavior prior to 0.31.0.
* command: make current-window-scale writeableDudemanguy2021-08-051-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | Somewhat confusingly, mpv has both a window-scale option and a current-window-scale property. The documentation lists window-scale under properties (and it is technically is one), but at its core it is actually an option which means it behaves subtly different. Options in mpv are runtime-configurable, but they only change anything if the value of the option itself changes. window-scale is an option and not meant to keep track of the actual scale of the window (intended behavior introduced by d07b7f0). This causes window-scale to do nothing in certain cases (ex: the window is manually resized and window-scale is set to 1.00 again). This is logical and consistent with the behavior of the rest of the mpv options, but it also makes it a poor candidate for setting the mpv window scale dynamically. As a remedy, we can just make current-window-scale writeable instead. current-window-scale is intended to always report the actual scale of the window and keep track of any window size changes made by the user. By making this property also writeable, it allows the user to have more intuitive behavior (i.e. setting current-window-scale to 1.00 always sets the window to a scale of 1). Additionally, the default input.conf is changed to use current-window-scale instead of window-scale. The window-scale documentation under property list is removed since it is already documented under options and users should probably set the current-window-scale property instead in most cases.
* sub/osd: hide secondary subtitles if secondary-sub-visibility is falseZsolt Vadasz2021-05-191-0/+1
|
* zsh completion: perform globbing on binary pathNiklas Haas2021-05-071-4/+4
| | | | | | | | | | | When trying to use completion for mpv binaries specified with some shell glob, e.g. ~/dev/mpv/build/mpv, the current code doesn't substitute the homedir prefix into the path name, resulting in runtime errors about the file '~/dev/mpv/build/mpv' not being found. The simple fixed is to use $~var instead of $var whenever expanding the filename, which performs the same globbing that would otherwise be performed when executing the command.
* input.conf: add default keybindings for sub-scalesoredake2020-10-271-2/+2
|
* stream_lavf: enable SRT protocol support through FFmpegAlexandre Iooss2020-10-151-1/+1
| | | | | Additionally, announce support for the protocol in Mac and Linux application metadata.
* zsh completion: helper functions in private namespaceEd Santiago2020-05-171-6/+6
| | | | | | | | | | | The generate_xxx() helpers, once defined, would appear as user-visible functions; this would lead to unexpected and confusing completion suggestions for gene<tab> after having once run mpv in that shell. This PR adds the prefix '_mpv_' to all completion functions as a convention to make them less user-visible and less likely to collide with other packages.
* input: add binding to quit on ctrl+wsfan52020-04-041-0/+1
| | | | Other GUI applications typically handle this as "close document" or "close window".
* sws_utils: use zimg by default if availablewm42020-02-121-1/+0
| | | | | This seems stable enough to use. Change the default, and remove it from the sw-fast profile.
* bash completion: complete ao/af/vo/vf optionsPhilip Langdale2020-02-081-1/+1
| | | | | I didn't handle these originally, but it turns out that they can be handled with the samel logic as Choice options.
* bash completion: Cache the options listPhilip Langdale2020-02-081-8/+11
| | | | | | The bash completion seems to be working decently at this point, so I feel comfortable caching the options output to improve the performance of the completion.
* input: add new PLAYONLY and PAUSEONLY MP_KEY key codesder richter2020-01-261-0/+2
| | | | | since the old PLAY and PAUSE key codes cycle through the pause property, the new key codes only explicitly set the pause property.
* bash completion: only generate option list when neededPhilip Langdale2020-01-131-5/+5
| | | | | | | | | | Right now we are generating the fully option list before doing anything else. That makes filename completion significantly slower than it was before, for no gain. It's easy to only generate the option list when it's actually needed. I also know I could additionally cache the option list across invocations, but I'm not doing that yet to make testing easier.
* bash completion: add initial implementation of bash completionPhilip Langdale2020-01-091-0/+112
| | | | | | While we've had a zsh completion script for a