From e48ac7ce08462f5e33af6ef9deeac6fa87eef01e Mon Sep 17 00:00:00 2001 From: sfan5 Date: Tue, 25 Mar 2025 18:32:57 +0100 Subject: [PATCH] Release 0.40.0 --- DOCS/interface-changes.rst | 134 +++++++++ DOCS/interface-changes/aspect-properties.txt | 4 - .../interface-changes/audiounit-exclusive.txt | 1 - DOCS/interface-changes/auto-profiles-prio.txt | 1 - DOCS/interface-changes/back-color.txt | 1 - DOCS/interface-changes/cdda-span.txt | 1 - DOCS/interface-changes/clipboard.txt | 4 - DOCS/interface-changes/commands.txt | 4 - DOCS/interface-changes/console-margins.txt | 1 - DOCS/interface-changes/console-menu.txt | 1 - .../console-scale-with-window.txt | 1 - .../current-watch-later-dir.txt | 1 - .../demuxer-mkv-crop-compat.txt | 1 - .../interface-changes/display-page-toggle.txt | 1 - DOCS/interface-changes/exts.txt | 4 - DOCS/interface-changes/frame-step.txt | 2 - DOCS/interface-changes/gamma-factor.txt | 1 - DOCS/interface-changes/geometry-behavior.txt | 1 - DOCS/interface-changes/glsl-shader-opts.txt | 1 - DOCS/interface-changes/hearing-impaired.txt | 1 - .../hwdec-software-fallback.txt | 1 - DOCS/interface-changes/hwdec.txt | 1 - DOCS/interface-changes/input.txt | 2 - DOCS/interface-changes/list-option.txt | 3 - DOCS/interface-changes/load-console.txt | 1 - .../media-controls-player.txt | 1 - DOCS/interface-changes/mp.input.txt | 4 - DOCS/interface-changes/mpv-protocol.txt | 1 - DOCS/interface-changes/nvidia-true-hdr.txt | 1 - DOCS/interface-changes/option-paths.txt | 2 - DOCS/interface-changes/osc-buttons.txt | 5 - DOCS/interface-changes/osc-fadein.txt | 1 - .../interface-changes/osc-script-messages.txt | 5 - DOCS/interface-changes/osc-slimbar.txt | 1 - DOCS/interface-changes/osd-bar-marker.txt | 2 - DOCS/interface-changes/prefetch-playlist.txt | 1 - DOCS/interface-changes/property-paths.txt | 1 - .../screenshot-raw-format.txt | 1 - .../script-binding-scalable.txt | 1 - DOCS/interface-changes/script-opt.txt | 1 - DOCS/interface-changes/selected-style.txt | 1 - DOCS/interface-changes/stats-sizes.txt | 1 - DOCS/interface-changes/stats-term-clip.txt | 3 - DOCS/interface-changes/sub-ass-options.txt | 3 - .../sub-ass-override-blur.txt | 1 - .../interface-changes/sub-ass-prune-delay.txt | 2 - DOCS/interface-changes/sub-scale-signs.txt | 1 - DOCS/interface-changes/term-clip-cc.txt | 1 - DOCS/interface-changes/track-metadata.txt | 1 - .../video-frame-info-timecode.txt | 1 - DOCS/interface-changes/video-recenter.txt | 1 - DOCS/interface-changes/watch-history.txt | 1 - .../wayland-internal-vsync.txt | 2 - DOCS/interface-changes/ytdl_hook-include.txt | 1 - MPV_VERSION | 2 +- RELEASE_NOTES | 280 +++++++----------- 56 files changed, 239 insertions(+), 265 deletions(-) delete mode 100644 DOCS/interface-changes/aspect-properties.txt delete mode 100644 DOCS/interface-changes/audiounit-exclusive.txt delete mode 100644 DOCS/interface-changes/auto-profiles-prio.txt delete mode 100644 DOCS/interface-changes/back-color.txt delete mode 100644 DOCS/interface-changes/cdda-span.txt delete mode 100644 DOCS/interface-changes/clipboard.txt delete mode 100644 DOCS/interface-changes/commands.txt delete mode 100644 DOCS/interface-changes/console-margins.txt delete mode 100644 DOCS/interface-changes/console-menu.txt delete mode 100644 DOCS/interface-changes/console-scale-with-window.txt delete mode 100644 DOCS/interface-changes/current-watch-later-dir.txt delete mode 100644 DOCS/interface-changes/demuxer-mkv-crop-compat.txt delete mode 100644 DOCS/interface-changes/display-page-toggle.txt delete mode 100644 DOCS/interface-changes/exts.txt delete mode 100644 DOCS/interface-changes/frame-step.txt delete mode 100644 DOCS/interface-changes/gamma-factor.txt delete mode 100644 DOCS/interface-changes/geometry-behavior.txt delete mode 100644 DOCS/interface-changes/glsl-shader-opts.txt delete mode 100644 DOCS/interface-changes/hearing-impaired.txt delete mode 100644 DOCS/interface-changes/hwdec-software-fallback.txt delete mode 100644 DOCS/interface-changes/hwdec.txt delete mode 100644 DOCS/interface-changes/input.txt delete mode 100644 DOCS/interface-changes/list-option.txt delete mode 100644 DOCS/interface-changes/load-console.txt delete mode 100644 DOCS/interface-changes/media-controls-player.txt delete mode 100644 DOCS/interface-changes/mp.input.txt delete mode 100644 DOCS/interface-changes/mpv-protocol.txt delete mode 100644 DOCS/interface-changes/nvidia-true-hdr.txt delete mode 100644 DOCS/interface-changes/option-paths.txt delete mode 100644 DOCS/interface-changes/osc-buttons.txt delete mode 100644 DOCS/interface-changes/osc-fadein.txt delete mode 100644 DOCS/interface-changes/osc-script-messages.txt delete mode 100644 DOCS/interface-changes/osc-slimbar.txt delete mode 100644 DOCS/interface-changes/osd-bar-marker.txt delete mode 100644 DOCS/interface-changes/prefetch-playlist.txt delete mode 100644 DOCS/interface-changes/property-paths.txt delete mode 100644 DOCS/interface-changes/screenshot-raw-format.txt delete mode 100644 DOCS/interface-changes/script-binding-scalable.txt delete mode 100644 DOCS/interface-changes/script-opt.txt delete mode 100644 DOCS/interface-changes/selected-style.txt delete mode 100644 DOCS/interface-changes/stats-sizes.txt delete mode 100644 DOCS/interface-changes/stats-term-clip.txt delete mode 100644 DOCS/interface-changes/sub-ass-options.txt delete mode 100644 DOCS/interface-changes/sub-ass-override-blur.txt delete mode 100644 DOCS/interface-changes/sub-ass-prune-delay.txt delete mode 100644 DOCS/interface-changes/sub-scale-signs.txt delete mode 100644 DOCS/interface-changes/term-clip-cc.txt delete mode 100644 DOCS/interface-changes/track-metadata.txt delete mode 100644 DOCS/interface-changes/video-frame-info-timecode.txt delete mode 100644 DOCS/interface-changes/video-recenter.txt delete mode 100644 DOCS/interface-changes/watch-history.txt delete mode 100644 DOCS/interface-changes/wayland-internal-vsync.txt delete mode 100644 DOCS/interface-changes/ytdl_hook-include.txt diff --git a/DOCS/interface-changes.rst b/DOCS/interface-changes.rst index c682fee986..e7f9a33afe 100644 --- a/DOCS/interface-changes.rst +++ b/DOCS/interface-changes.rst @@ -30,7 +30,141 @@ Interface changes :: + --- mpv 0.41.0 --- --- mpv 0.40.0 --- + - undeprecate list option suffixes that work with multiple items + - add `-del` to string list and keyvalue list options + - add `-clr` to keyvalue list options + - undeprecate `--gamma-factor` + - the `path` and `track-list/N/external-filename` properties now always + return a full, absolute path + - rename `--vd-lavc-software-fallback` to `--hwdec-software-fallback` + - rename `--sub-ass-line-spacing` to `--sub-line-spacing` + - rename `--sub-ass-shaper` to `--sub-shaper` + - rename `--sub-ass-hinting` to `--sub-hinting` + - rename `--load-osd-console` to `--load-console` + - remove `stats-term_width_limit` script-opt + - add `stats-term_clip` script-opt + - remove `stats-term_height_limit` script-opt + - remove `player` argument form `--media-controls`, it's handled internally + now. + - make `script-binding` command scalable; add `nonscalable` command prefix + to restore the old behavior + - deprecate `osc-message` script message in favor of `show-text` command + - deprecate `osc-chapterlist` script message in favor of `show-text + ${chapter-list}` + - deprecate `osc-playlist` script message in favor of `show-text + ${playlist}` + - deprecate `osc-tracklist` script message in favor of `show-text ${track- + list}` + - add `visibility_modes` script-opt to osc + - deprecate `--wayland-disable-vsync` + - add `--wayland-internal-vsync` as a replacement for `--wayland-disable- + vsync` + - deprecate `--cdda-span-a` and `--cdda-span-b` + - commands.lua is split out of console.lua. commands.lua runs and completes + commands and adds mpv's log entries to the console's log, while + console.lua handles the UI for other scripts + - add `--load-commands` option + - `script-binding console/enable` becomes `script-binding commands/open`, + though the console one is kept as an alias + - `script-message-to console type` becomes `script-message-to commands + type`, though the console one is kept as an alias. This also now + automatically closes the console after running the command. + - change the underlying type of the `aspect`, `par`, and `sar` sub- + properties to double from float + - add `--video-aspect-method=ignore` + - change `--video-aspect-override=no` to respect `--video-aspect-method` + option + - deprecate setting `--video-aspect-override` to `0` and `-1` + - change several OSC mouse bindings to select.lua functions + - add script-opts to configure what OSC buttons do when clicked + - remove `osc-playlist_osd` script-opt and behave as if it was off by + default; `playlist_osd=yes` can be replicated with `osc- + playlist_prev_mbtn_left_command=playlist-prev; show-text ${playlist} 3000` + and `osc-playlist_next_mbtn_left_command=playlist-next; show-text + ${playlist} 3000` + - remove `osc-chapters_osd` script-opt and behave as if it was off by + default; `chapter_osd=yes` can be replicated with `osc- + chapter_prev_mbtn_left_command=no-osd add chapter -1; show-text ${chapter- + list} 3000` and `osc-chapter_next_mbtn_left_command=no-osd add chapter 1; + show-text ${chapter-list} 3000` + - add script-opts to define custom buttons + - change `--prefetch-playlist`'s default to `yes` + - change `--osd-back-color` and `--sub-back-color` defaults to #AF000000 + - change `--geometry` so that it no longer unconditionally moves the window + on platforms where that is possible. Use `--force-window-position` or add + `+50%+50%` to your geometry command to get the old behavior back. + - all options that take filepaths as values are now properly expanded (i.e. + ~/ -> /home/$USER) + - all commands that take filepaths as arguments are now properly expanded + (i.e. ~/ -> /home/$USER) + - add `ytdl_hook-include` script-opt + - add `video-frame-info/gop-timecode`, `video-frame-info/smpte-timecode` and + `video-frame-info/estimated-smpte-timecode` + - add `term-clip-cc` + - add `sub-ass-prune-delay` option to control libass automatic pruning of + past + - events + - add `slimbottombar` and `slimtopbar` OSC layouts optimized for viewing + images + - add `osc-fadein` script-opt + - add `mpv://` protocol + - add `metadata` sub-property for `track-list` + - add `keep_open` flag to `mp.input.get()` and `mp.input.select()` + - `mp.input.get()` now closes automatically on submit, pass `keep_open = + true` to restore the old behavior + - add `autoselect_completion` flag to `mp.input.get()` + - add `history_path` key to `mp.input.get()` + - add `hearing-impaired`, `visual-impaired` and `attached-picture` flags to + track add command + - add `format` argument to `screenshot-raw` command + - add `display-page-n-toggle` script bindings to stats.lua, where n is a + page number + - add `demuxer-mkv-crop-compat` option + - add `current-watch-later-dir` property + - add `console-scale_with_window` script-opt + - add `console-margin-x` and `console-margin-y` script-opts + - add `console-background_alpha` `console-menu_outline_size` `console- + menu_outline_color` `console-corner_radius` `console-selected_color` and + `console-selected_back_color` script-opts + - add `--video-recenter` option + - add `nvidia-true-hdr` mode to vf_d3d11vpp + - add `--sub-scale-signs` to allow `--sub-scale` to also scale events + detected to be signs by libass + - add `--script-opt` alias for `--script-opts-append` + - add `--save-watch-history` and `--watch-history-path` options + - add `--osd-selected-color` and `--osd-selected-outline-color` options + - add `--osd-bar-marker-scale` and `--osd-bar-marker-min-size` options + - add `--osd-bar-marker-style` option + - add `--input-ime` to enable or disable the IME on supported VOs (Windows, + Wayland) + - add `--clipboard-monitor` option + - add `clipboard` property + - add `current-clipboard-backend` property + - add `--clipboard-backends` option + - add `--archive-exts` + - add `archive` to `--directory-filter-types`' default + - add `--playlist-exts` + - add `playlist` to `--directory-filter-types`' default + - add --audio-exclusive option support for ao=audiounit and make non- + exclusive the new default + - `sub-blur` is now applied by `sub-ass-override=force` with new enough + libass + - `stats-font_size`, `stats-border_size`, `stats-shadow_x_offset`, `stats- + shadow_y_offset` and `stats-plot_bg_border_width` script-opt values result + in 2.5 times smaller sizes in order to have the same sizes as the values + of equivalent OSD options like `--osd-font-size`. If you customized these + sizes, multiply them by 2.5 to get the previous sizes. + - ``glsl-shader-opts`` now has predefined parameters that can be used. See + the documentation for available values. + - `--hwdec=auto` now behaves like `--hwdec=auto-safe`; use `--hwdec=auto- + unsafe` to get the old behavior back + - Change auto profiles hook priority from 50 to 5 + - add optional `frames` and `flags` arguments to `frame-step` command + controlling the direction and amount of frames mpv steps through + - add optional `mute` flag to `frame-step` command which mutes the player + during the duration of the frame step --- mpv 0.39.0 --- - turn `--cover-art-whitelist` into a list option - reserve `user-data/osc` and `user-data/mpv` sub-paths for internal use diff --git a/DOCS/interface-changes/aspect-properties.txt b/DOCS/interface-changes/aspect-properties.txt deleted file mode 100644 index abbaf63f8d..0000000000 --- a/DOCS/interface-changes/aspect-properties.txt +++ /dev/null @@ -1,4 +0,0 @@ -change the underlying type of the `aspect`, `par`, and `sar` sub-properties to double from float -add `--video-aspect-method=ignore` -change `--video-aspect-override=no` to respect `--video-aspect-method` option -deprecate setting `--video-aspect-override` to `0` and `-1` diff --git a/DOCS/interface-changes/audiounit-exclusive.txt b/DOCS/interface-changes/audiounit-exclusive.txt deleted file mode 100644 index 07c5061a9d..0000000000 --- a/DOCS/interface-changes/audiounit-exclusive.txt +++ /dev/null @@ -1 +0,0 @@ -add --audio-exclusive option support for ao=audiounit and make non-exclusive the new default diff --git a/DOCS/interface-changes/auto-profiles-prio.txt b/DOCS/interface-changes/auto-profiles-prio.txt deleted file mode 100644 index 20651eebb9..0000000000 --- a/DOCS/interface-changes/auto-profiles-prio.txt +++ /dev/null @@ -1 +0,0 @@ -Change auto profiles hook priority from 50 to 5 diff --git a/DOCS/interface-changes/back-color.txt b/DOCS/interface-changes/back-color.txt deleted file mode 100644 index c3e7e0331d..0000000000 --- a/DOCS/interface-changes/back-color.txt +++ /dev/null @@ -1 +0,0 @@ -change `--osd-back-color` and `--sub-back-color` defaults to #AF000000 diff --git a/DOCS/interface-changes/cdda-span.txt b/DOCS/interface-changes/cdda-span.txt deleted file mode 100644 index 53fd2b0b5d..0000000000 --- a/DOCS/interface-changes/cdda-span.txt +++ /dev/null @@ -1 +0,0 @@ -deprecate `--cdda-span-a` and `--cdda-span-b` diff --git a/DOCS/interface-changes/clipboard.txt b/DOCS/interface-changes/clipboard.txt deleted file mode 100644 index 9a1582d5ef..0000000000 --- a/DOCS/interface-changes/clipboard.txt +++ /dev/null @@ -1,4 +0,0 @@ -add `--clipboard-monitor` option -add `clipboard` property -add `current-clipboard-backend` property -add `--clipboard-backends` option diff --git a/DOCS/interface-changes/commands.txt b/DOCS/interface-changes/commands.txt deleted file mode 100644 index c3d552fc1d..0000000000 --- a/DOCS/interface-changes/commands.txt +++ /dev/null @@ -1,4 +0,0 @@ -commands.lua is split out of console.lua. commands.lua runs and completes commands and adds mpv's log entries to the console's log, while console.lua handles the UI for other scripts -add `--load-commands` option -`script-binding console/enable` becomes `script-binding commands/open`, though the console one is kept as an alias -`script-message-to console type` becomes `script-message-to commands type`, though the console one is kept as an alias. This also now automatically closes the console after running the command. diff --git a/DOCS/interface-changes/console-margins.txt b/DOCS/interface-changes/console-margins.txt deleted file mode 100644 index 6b7db5fd9f..0000000000 --- a/DOCS/interface-changes/console-margins.txt +++ /dev/null @@ -1 +0,0 @@ -add `console-margin-x` and `console-margin-y` script-opts diff --git a/DOCS/interface-changes/console-menu.txt b/DOCS/interface-changes/console-menu.txt deleted file mode 100644 index 1539a61e40..0000000000 --- a/DOCS/interface-changes/console-menu.txt +++ /dev/null @@ -1 +0,0 @@ -add `console-background_alpha` `console-menu_outline_size` `console-menu_outline_color` `console-corner_radius` `console-selected_color` and `console-selected_back_color` script-opts diff --git a/DOCS/interface-changes/console-scale-with-window.txt b/DOCS/interface-changes/console-scale-with-window.txt deleted file mode 100644 index 5f2826bfe0..0000000000 --- a/DOCS/interface-changes/console-scale-with-window.txt +++ /dev/null @@ -1 +0,0 @@ -add `console-scale_with_window` script-opt diff --git a/DOCS/interface-changes/current-watch-later-dir.txt b/DOCS/interface-changes/current-watch-later-dir.txt deleted file mode 100644 index 3fed357341..0000000000 --- a/DOCS/interface-changes/current-watch-later-dir.txt +++ /dev/null @@ -1 +0,0 @@ -add `current-watch-later-dir` property diff --git a/DOCS/interface-changes/demuxer-mkv-crop-compat.txt b/DOCS/interface-changes/demuxer-mkv-crop-compat.txt deleted file mode 100644 index 0058ddd5e4..0000000000 --- a/DOCS/interface-changes/demuxer-mkv-crop-compat.txt +++ /dev/null @@ -1 +0,0 @@ -add `demuxer-mkv-crop-compat` option diff --git a/DOCS/interface-changes/display-page-toggle.txt b/DOCS/interface-changes/display-page-toggle.txt deleted file mode 100644 index 0352821074..0000000000 --- a/DOCS/interface-changes/display-page-toggle.txt +++ /dev/null @@ -1 +0,0 @@ -add `display-page-n-toggle` script bindings to stats.lua, where n is a page number diff --git a/DOCS/interface-changes/exts.txt b/DOCS/interface-changes/exts.txt deleted file mode 100644 index 827e702adb..0000000000 --- a/DOCS/interface-changes/exts.txt +++ /dev/null @@ -1,4 +0,0 @@ -add `--archive-exts` -add `archive` to `--directory-filter-types`' default -add `--playlist-exts` -add `playlist` to `--directory-filter-types`' default diff --git a/DOCS/interface-changes/frame-step.txt b/DOCS/interface-changes/frame-step.txt deleted file mode 100644 index b927b51e51..0000000000 --- a/DOCS/interface-changes/frame-step.txt +++ /dev/null @@ -1,2 +0,0 @@ -- add optional `frames` and `flags` arguments to `frame-step` command controlling the direction and amount of frames mpv steps through -- add optional `mute` flag to `frame-step` command which mutes the player during the duration of the frame step diff --git a/DOCS/interface-changes/gamma-factor.txt b/DOCS/interface-changes/gamma-factor.txt deleted file mode 100644 index 05ab04b5ab..0000000000 --- a/DOCS/interface-changes/gamma-factor.txt +++ /dev/null @@ -1 +0,0 @@ -undeprecate `--gamma-factor` diff --git a/DOCS/interface-changes/geometry-behavior.txt b/DOCS/interface-changes/geometry-behavior.txt deleted file mode 100644 index cab61a830a..0000000000 --- a/DOCS/interface-changes/geometry-behavior.txt +++ /dev/null @@ -1 +0,0 @@ -change `--geometry` so that it no longer unconditionally moves the window on platforms where that is possible. Use `--force-window-position` or add `+50%+50%` to your geometry command to get the old behavior back. diff --git a/DOCS/interface-changes/glsl-shader-opts.txt b/DOCS/interface-changes/glsl-shader-opts.txt deleted file mode 100644 index e350b77aa3..0000000000 --- a/DOCS/interface-changes/glsl-shader-opts.txt +++ /dev/null @@ -1 +0,0 @@ -``glsl-shader-opts`` now has predefined parameters that can be used. See the documentation for available values. diff --git a/DOCS/interface-changes/hearing-impaired.txt b/DOCS/interface-changes/hearing-impaired.txt deleted file mode 100644 index 3243242367..0000000000 --- a/DOCS/interface-changes/hearing-impaired.txt +++ /dev/null @@ -1 +0,0 @@ -add `hearing-impaired`, `visual-impaired` and `attached-picture` flags to track add command diff --git a/DOCS/interface-changes/hwdec-software-fallback.txt b/DOCS/interface-changes/hwdec-software-fallback.txt deleted file mode 100644 index ca36f44ec3..0000000000 --- a/DOCS/interface-changes/hwdec-software-fallback.txt +++ /dev/null @@ -1 +0,0 @@ -rename `--vd-lavc-software-fallback` to `--hwdec-software-fallback` diff --git a/DOCS/interface-changes/hwdec.txt b/DOCS/interface-changes/hwdec.txt deleted file mode 100644 index 62d7d1300a..0000000000 --- a/DOCS/interface-changes/hwdec.txt +++ /dev/null @@ -1 +0,0 @@ -`--hwdec=auto` now behaves like `--hwdec=auto-safe`; use `--hwdec=auto-unsafe` to get the old behavior back diff --git a/DOCS/interface-changes/input.txt b/DOCS/interface-changes/input.txt deleted file mode 100644 index 2a0f8dbac1..0000000000 --- a/DOCS/interface-changes/input.txt +++ /dev/null @@ -1,2 +0,0 @@ -add `--input-ime` to enable or disable the IME on supported VOs (Windows, Wayland) -disable IME by default; set `--input-ime=yes` to enable it on demand diff --git a/DOCS/interface-changes/list-option.txt b/DOCS/interface-changes/list-option.txt deleted file mode 100644 index f0697acd7c..0000000000 --- a/DOCS/interface-changes/list-option.txt +++ /dev/null @@ -1,3 +0,0 @@ -undeprecate list option suffixes that work with multiple items -add `-del` to string list and keyvalue list options -add `-clr` to keyvalue list options diff --git a/DOCS/interface-changes/load-console.txt b/DOCS/interface-changes/load-console.txt deleted file mode 100644 index 2aa4d793b6..0000000000 --- a/DOCS/interface-changes/load-console.txt +++ /dev/null @@ -1 +0,0 @@ -rename `--load-osd-console` to `--load-console` diff --git a/DOCS/interface-changes/media-controls-player.txt b/DOCS/interface-changes/media-controls-player.txt deleted file mode 100644 index 43ca56057d..0000000000 --- a/DOCS/interface-changes/media-controls-player.txt +++ /dev/null @@ -1 +0,0 @@ -remove `player` argument form `--media-controls`, it's handled internally now. diff --git a/DOCS/interface-changes/mp.input.txt b/DOCS/interface-changes/mp.input.txt deleted file mode 100644 index cd8d26798b..0000000000 --- a/DOCS/interface-changes/mp.input.txt +++ /dev/null @@ -1,4 +0,0 @@ -add `keep_open` flag to `mp.input.get()` and `mp.input.select()` -`mp.input.get()` now closes automatically on submit, pass `keep_open = true` to restore the old behavior -add `autoselect_completion` flag to `mp.input.get()` -add `history_path` key to `mp.input.get()` diff --git a/DOCS/interface-changes/mpv-protocol.txt b/DOCS/interface-changes/mpv-protocol.txt deleted file mode 100644 index 5238d2e6f6..0000000000 --- a/DOCS/interface-changes/mpv-protocol.txt +++ /dev/null @@ -1 +0,0 @@ -add `mpv://` protocol diff --git a/DOCS/interface-changes/nvidia-true-hdr.txt b/DOCS/interface-changes/nvidia-true-hdr.txt deleted file mode 100644 index cdd0e40628..0000000000 --- a/DOCS/interface-changes/nvidia-true-hdr.txt +++ /dev/null @@ -1 +0,0 @@ -add `--vf=d3d11vpp=nvidia-true-hdr` diff --git a/DOCS/interface-changes/option-paths.txt b/DOCS/interface-changes/option-paths.txt deleted file mode 100644 index 2add1773cc..0000000000 --- a/DOCS/interface-changes/option-paths.txt +++ /dev/null @@ -1,2 +0,0 @@ -all options that take filepaths as values are now properly expanded (i.e. ~/ -> /home/$USER) -all commands that take filepaths as arguments are now properly expanded (i.e. ~/ -> /home/$USER) diff --git a/DOCS/interface-changes/osc-buttons.txt b/DOCS/interface-changes/osc-buttons.txt deleted file mode 100644 index b86e164b96..0000000000 --- a/DOCS/interface-changes/osc-buttons.txt +++ /dev/null @@ -1,5 +0,0 @@ -change several OSC mouse bindings to select.lua functions -add script-opts to configure what OSC buttons do when clicked -remove `osc-playlist_osd` script-opt and behave as if it was off by default; `playlist_osd=yes` can be replicated with `osc-playlist_prev_mbtn_left_command=playlist-prev; show-text ${playlist} 3000` and `osc-playlist_next_mbtn_left_command=playlist-next; show-text ${playlist} 3000` -remove `osc-chapters_osd` script-opt and behave as if it was off by default; `chapter_osd=yes` can be replicated with `osc-chapter_prev_mbtn_left_command=no-osd add chapter -1; show-text ${chapter-list} 3000` and `osc-chapter_next_mbtn_left_command=no-osd add chapter 1; show-text ${chapter-list} 3000` -add script-opts to define custom buttons diff --git a/DOCS/interface-changes/osc-fadein.txt b/DOCS/interface-changes/osc-fadein.txt deleted file mode 100644 index 01aadbc36e..0000000000 --- a/DOCS/interface-changes/osc-fadein.txt +++ /dev/null @@ -1 +0,0 @@ -add `osc-fadein` script-opt diff --git a/DOCS/interface-changes/osc-script-messages.txt b/DOCS/interface-changes/osc-script-messages.txt deleted file mode 100644 index b7ea60ff02..0000000000 --- a/DOCS/interface-changes/osc-script-messages.txt +++ /dev/null @@ -1,5 +0,0 @@ -deprecate `osc-message` script message in favor of `show-text` command -deprecate `osc-chapterlist` script message in favor of `show-text ${chapter-list}` -deprecate `osc-playlist` script message in favor of `show-text ${playlist}` -deprecate `osc-tracklist` script message in favor of `show-text ${track-list}` -add `visibility_modes` script-opt to osc diff --git a/DOCS/interface-changes/osc-slimbar.txt b/DOCS/interface-changes/osc-slimbar.txt deleted file mode 100644 index f018bf8e45..0000000000 --- a/DOCS/interface-changes/osc-slimbar.txt +++ /dev/null @@ -1 +0,0 @@ -add `slimbottombar` and `slimtopbar` OSC layouts optimized for viewing images diff --git a/DOCS/interface-changes/osd-bar-marker.txt b/DOCS/interface-changes/osd-bar-marker.txt deleted file mode 100644 index 027d1e3e7a..0000000000 --- a/DOCS/interface-changes/osd-bar-marker.txt +++ /dev/null @@ -1,2 +0,0 @@ -add `--osd-bar-marker-scale` and `--osd-bar-marker-min-size` options -add `--osd-bar-marker-style` option diff --git a/DOCS/interface-changes/prefetch-playlist.txt b/DOCS/interface-changes/prefetch-playlist.txt deleted file mode 100644 index 296c233f1f..0000000000 --- a/DOCS/interface-changes/prefetch-playlist.txt +++ /dev/null @@ -1 +0,0 @@ -change `--prefetch-playlist`'s default to `yes` diff --git a/DOCS/interface-changes/property-paths.txt b/DOCS/interface-changes/property-paths.txt deleted file mode 100644 index 7a116322c7..0000000000 --- a/DOCS/interface-changes/property-paths.txt +++ /dev/null @@ -1 +0,0 @@ -the `path` and `track-list/N/external-filename` properties now always return a full, absolute path diff --git a/DOCS/interface-changes/screenshot-raw-format.txt b/DOCS/interface-changes/screenshot-raw-format.txt deleted file mode 100644 index 4e0514d9f3..0000000000 --- a/DOCS/interface-changes/screenshot-raw-format.txt +++ /dev/null @@ -1 +0,0 @@ -add `format` argument to `screenshot-raw` command diff --git a/DOCS/interface-changes/script-binding-scalable.txt b/DOCS/interface-changes/script-binding-scalable.txt deleted file mode 100644 index bbd8c5d64e..0000000000 --- a/DOCS/interface-changes/script-binding-scalable.txt +++ /dev/null @@ -1 +0,0 @@ -make `script-binding` command scalable; add `nonscalable` command prefix to restore the old behavior diff --git a/DOCS/interface-changes/script-opt.txt b/DOCS/interface-changes/script-opt.txt deleted file mode 100644 index 8c20e65471..0000000000 --- a/DOCS/interface-changes/script-opt.txt +++ /dev/null @@ -1 +0,0 @@ -add `--script-opt` alias for `--script-opts-append` diff --git a/DOCS/interface-changes/selected-style.txt b/DOCS/interface-changes/selected-style.txt deleted file mode 100644 index 0bd2e87e44..0000000000 --- a/DOCS/interface-changes/selected-style.txt +++ /dev/null @@ -1 +0,0 @@ -add `--osd-selected-color` and `--osd-selected-outline-color` options diff --git a/DOCS/interface-changes/stats-sizes.txt b/DOCS/interface-changes/stats-sizes.txt deleted file mode 100644 index b5da353ffa..0000000000 --- a/DOCS/interface-changes/stats-sizes.txt +++ /dev/null @@ -1 +0,0 @@ -`stats-font_size`, `stats-border_size`, `stats-shadow_x_offset`, `stats-shadow_y_offset` and `stats-plot_bg_border_width` script-opt values result in 2.5 times smaller sizes in order to have the same sizes as the values of equivalent OSD options like `--osd-font-size`. If you customized these sizes, multiply them by 2.5 to get the previous sizes. diff --git a/DOCS/interface-changes/stats-term-clip.txt b/DOCS/interface-changes/stats-term-clip.txt deleted file mode 100644 index 70a0613d58..0000000000 --- a/DOCS/interface-changes/stats-term-clip.txt +++ /dev/null @@ -1,3 +0,0 @@ -remove `stats-term_width_limit` script-opt -add `stats-term_clip` script-opt -remove `stats-term_height_limit` script-opt diff --git a/DOCS/interface-changes/sub-ass-options.txt b/DOCS/interface-changes/sub-ass-options.txt deleted file mode 100644 index 7772e94516..0000000000 --- a/DOCS/interface-changes/sub-ass-options.txt +++ /dev/null @@ -1,3 +0,0 @@ -rename `--sub-ass-line-spacing` to `--sub-line-spacing` -rename `--sub-ass-shaper` to `--sub-shaper` -rename `--sub-ass-hinting` to `--sub-hinting` diff --git a/DOCS/interface-changes/sub-ass-override-blur.txt b/DOCS/interface-changes/sub-ass-override-blur.txt deleted file mode 100644 index dc10676e9d..0000000000 --- a/DOCS/interface-changes/sub-ass-override-blur.txt +++ /dev/null @@ -1 +0,0 @@ -`sub-blur` is now applied by `sub-ass-override=force` with new enough libass diff --git a/DOCS/interface-changes/sub-ass-prune-delay.txt b/DOCS/interface-changes/sub-ass-prune-delay.txt deleted file mode 100644 index 78c3a33ec9..0000000000 --- a/DOCS/interface-changes/sub-ass-prune-delay.txt +++ /dev/null @@ -1,2 +0,0 @@ -add `sub-ass-prune-delay` option to control libass automatic pruning of past -events diff --git a/DOCS/interface-changes/sub-scale-signs.txt b/DOCS/interface-changes/sub-scale-signs.txt deleted file mode 100644 index df8009a666..0000000000 --- a/DOCS/interface-changes/sub-scale-signs.txt +++ /dev/null @@ -1 +0,0 @@ -add `--sub-scale-signs` to allow `--sub-scale` to also scale events detected to be signs by libass diff --git a/DOCS/interface-changes/term-clip-cc.txt b/DOCS/interface-changes/term-clip-cc.txt deleted file mode 100644 index 79c12b0310..0000000000 --- a/DOCS/interface-changes/term-clip-cc.txt +++ /dev/null @@ -1 +0,0 @@ -add `term-clip-cc` diff --git a/DOCS/interface-changes/track-metadata.txt b/DOCS/interface-changes/track-metadata.txt deleted file mode 100644 index 6aa189ec42..0000000000 --- a/DOCS/interface-changes/track-metadata.txt +++ /dev/null @@ -1 +0,0 @@ -add `metadata` sub-property for `track-list` diff --git a/DOCS/interface-changes/video-frame-info-timecode.txt b/DOCS/interface-changes/video-frame-info-timecode.txt deleted file mode 100644 index 320a5ebdc6..0000000000 --- a/DOCS/interface-changes/video-frame-info-timecode.txt +++ /dev/null @@ -1 +0,0 @@ -add `video-frame-info/gop-timecode`, `video-frame-info/smpte-timecode` and `video-frame-info/estimated-smpte-timecode` diff --git a/DOCS/interface-changes/video-recenter.txt b/DOCS/interface-changes/video-recenter.txt deleted file mode 100644 index a0905a07f3..0000000000 --- a/DOCS/interface-changes/video-recenter.txt +++ /dev/null @@ -1 +0,0 @@ -add `--video-recenter` option diff --git a/DOCS/interface-changes/watch-history.txt b/DOCS/interface-changes/watch-history.txt deleted file mode 100644 index 28e5c674f8..0000000000 --- a/DOCS/interface-changes/watch-history.txt +++ /dev/null @@ -1 +0,0 @@ -add `--save-watch-history` and `--watch-history-path` options diff --git a/DOCS/interface-changes/wayland-internal-vsync.txt b/DOCS/interface-changes/wayland-internal-vsync.txt deleted file mode 100644 index 8131143998..0000000000 --- a/DOCS/interface-changes/wayland-internal-vsync.txt +++ /dev/null @@ -1,2 +0,0 @@ -deprecate `--wayland-disable-vsync` -add `--wayland-internal-vsync` as a replacement for `--wayland-disable-vsync` diff --git a/DOCS/interface-changes/ytdl_hook-include.txt b/DOCS/interface-changes/ytdl_hook-include.txt deleted file mode 100644 index 8affad81e0..0000000000 --- a/DOCS/interface-changes/ytdl_hook-include.txt +++ /dev/null @@ -1 +0,0 @@ -add `ytdl_hook-include` script-opt diff --git a/MPV_VERSION b/MPV_VERSION index e1d0675ef4..9b0025a785 100644 --- a/MPV_VERSION +++ b/MPV_VERSION @@ -1 +1 @@ -0.39.0-UNKNOWN +0.40.0 diff --git a/RELEASE_NOTES b/RELEASE_NOTES index acc828bb08..fa0901965d 100644 --- a/RELEASE_NOTES +++ b/RELEASE_NOTES @@ -1,205 +1,133 @@ -Release 0.39.0 +Release 0.40.0 ============== -We are excited to announce the release of mpv 0.39.0, with more than 5 months of development since the last version. This release brings numerous improvements and fixes across nearly all components. +We are excited to announce the release of mpv 0.40.0. Key highlights: -* A new select.lua script, allowing users to easily choose files from playlists, tracks, chapters, output devices, and more. -* A native replacement for autoload.lua has been implemented. See --autocreate-playlist in the manual. -* NVIDIA RTX and Intel VSR scaling are now supported via the d3d11va filter. -* Media controls are now supported on Windows. -* Track selection has been improved, especially for multi-component languages like fr-CA. -* A new fifth page has been added to stats.lua, displaying track information. -* Compatibility with dmabuf-wayland has been significantly enhanced. -* Multi-touch support has been introduced. +* Console: Enhanced autocompletion and visual styling +* OSC: New selection menu accessible by right-clicking common buttons +* HDR is now natively supported when using direct rendering (DRM), + as well as dmabuf-wayland on Linux +* Native clipboard access for scripts via new `clipboard` property +* New command menu, with common actions easily accessible +* Enhanced select.lua with new selection options for watch history, editions, DVD/Blu-Ray titles +* New positioning.lua script script for cursor-centric zooming and drag to pan +* Better stream support for Blu-ray, DVD and CDDA +* Track selection improvements and better metadata display +* Added osd-box / sub-box / box profiles to easily enable box styled OSD/OSC +* Windows support in umpv helper script This release requires FFmpeg 6.1 or newer and libplacebo 6.338.2 or newer. +# Features + +## New + +- vf_d3d11vpp: add NVIDIA RTX Video HDR support +- context_drm_gl: add support for HDR metadata +- positioning.lua: add new script for video alignment and zooming +- umpv: add Windows support +- command: add clipboard property with native backends for Windows, macOS, and Wayland +- select.lua: add watch history, edition, DVD/Blu-Ray titles and more selection options +- input.conf: add cursor-centric zoom and drag-to-pan bindings +- wayland: add support for wp-color-management-v1 protocol +- console.lua: add persistent command history +- stats.lua: add timecode display +- options: add --playlist-exts and --archive-exts +- wayland_common: support IME usage via text-input-v3 +- command: add multiple track metadata and properties +- vo_gpu_next: add chroma location and HDR metadata to shader parameters +- player/screenshot: support more formats for screenshot-raw command +- demux_mkv: add `--demuxer-mkv-crop-compat` option +- misc/language: parse hi/sdh/cc tags from external subtitle tracks +- wayland: support xdg-activation +- player: add mpv:// protocol -Features --------- +## Changed -New -~~~ - -- vf_d3d11vpp: add support for Intel VSR and NVIDIA RTX scaling modes -- demux: add --autocreate-playlist -- audio: add pitch-shifting feature -- win32: add Media Control support -- various: allow changing GPU API options at runtime -- vo_gpu_next: support --gamma-factor -- vf_vapoursynth: upgrade to VapourSynth API v4 -- select.lua: add this script -- console.lua: implement a command parser to complete more things -- demux_mkv: demux Block Additional Mappings -- cocoa-cb: add support for macOS color space transformation (EDR/HDR) -- powershell-completion: add PowerShell command line completion -- input: implement VO dragging deadzone -- win32: support multitouch -- wayland_common: support multitouch -- demux/packet: add support for ITU T.35 metadata in Matroska -- demux: support VVC Matroska demux -- terminal-win: support mouse input events -- x11_common: detect wm support for _NET_WM_STATE_SKIP_TASKBAR +- meson: build libmpv by default +- command: enhance track and playlist display information +- input.conf: improve numpad key bindings +- osc.lua: add custom buttons support and improved mouse bindings +- console.lua: inherit OSD styles and colors +- options: default to --prefetch-playlist=yes +- osc.lua: add slimbottombar and slimtopbar layouts +- command: improve frame-step to go through multiple frames +- wayland: use wp-presentation v2 if available +- various: reorganize options into more logical groups +- vo_gpu_next: improve target colorspace handling +- options: disable `--input-ime` by default (enabled on demand) -Changed -~~~~~~~ +# Options and Commands -- loadfile: improve the format of terminal track information -- options: add secondary-{sid,sub-delay} to watch_later_options -- input: map Num 5 to distinct value when numlock is off -- input.conf: make Alt+BS reset panscan -- msg: don't use bold colors and instead use bright ones +## Added + +- sd_ass: introduce sub-ass-prune-delay +- player: add an optional mute flag when framestepping +- command: add clipboard/text-primary property +- command: add current-clipboard-backend property +- command: add notify-property command +- options: add --script-opt alias for --script-opts-append +- options: add --osd-bar-marker-{size,style} options +- options: add --input-ime for improved text input +- options: add --video-recenter +- options: add --clipboard-backends +- options: add --wayland-internal-vsync +- options: add --sub-scale-signs -Options and Commands --------------------- +## Changed -Added -~~~~~ - -- sub: add ass-video-aspect-override option -- input/keycodes: add KP_ADD/SUBTRACT/MULTIPLY/DIVIDE keycodes -- demux_playlist: use --directory-filter-types for --autocreate-playlist -- options: add --{video,audio,image}-exts -- player: don't decrement --ab-loop-count=N and add remaining-ab-loops -- player: don't decrement --loop-file=N and add remaining-file-loops -- sub: add (sub/osd)-border-style; renaming sub options -- input.conf: add zoom, pan, scale and rotate keybinds for numpad -- wayland: add a --wayland-present option -- mac/menu: add option to disable default shortcuts -- stats.lua: display file tags -- osc.lua: add option to use display fps for update interval -- osc.lua: add option to make rendering smoother -- opengl: add --egl-output-format, --egl-config-id -- vf_vapoursynth: add parameter to pass arbitrary string to script -- options: add --osd-playlist-entry -- {osc,stats}.lua: add 'auto' value to vidscale option -- input/cmd: add nonrepeatable prefix -- player: add option-info//expects-file -- command: add dolby-vision-profile and dolby-vision-level to track-list -- scripting: add mp.input.select() -- command: add normalize-path command -- OSC: implemented user configurable colors -- ao_wasapi: add `--wasapi-exclusive-buffer` option -- stats.lua: add option to disable scale with video size -- stats.lua: add option to control plot border width -- player/command: add track-list/N/decoder -- sd_ass: add `sub-vsfilter-bidi-compat` to enable vsfilter bidi compat -- {x11,w32}_common: implement --show-in-taskbar option +- options: rename --load-osd-console to --load-console +- player: improve track selection for multi-component languages +- options: improve frame-step command to handle multiple frames +- input.conf: make Alt+BS reset --video-align-{x,y} +- command: print track metadata when changing track +- command: print track-list with enhanced metadata -Changed -~~~~~~~ +## Deprecated -- sub: merge vsfilter-aspect and vsfilter-blur-compat options -- input.conf: swap the positions of values for `ctrl+h` binding -- video/csputils: remove space from choice option for chroma loc -- input.conf: add KP_DIVIDE/KP_MULTIPLY key bindings -- external_files: allow specifying --cover-art-whitelist filenames -- x11_common: handle runtime keepaspect/keepaspect-window change -- video/out/gpu/context: convert --gpu-api to object settings list -- playlist: let playlist-next go to first item if player is idle -- playlist: let playlist-prev go to last item in playlist -- options: remove deprecated auto choice for --mute -- player/command: alias playback-time to time-pos -- input.conf: change 'u' binding to cycle between 'force' and default -- options: make sub-ass-override default to 'scale' -- sd_ass: only set sub-scale for 'scale', 'force' or 'strip' -- player/command: mark sub-text-ass as deprecated -- player/command: add sub-text/ass-full sub-property -- player/command: move sub-text-ass to a sub-property +- options: deprecate `--gamma-auto` (use gamma-auto.lua script instead) +- options: deprecate undocumented --cdda-span-{a,b} options -Removed -~~~~~~~ +# Fixes and Minor Enhancements -- command: remove deprecated packet-*-bitrate properties -- console.lua: remove the scale script-opt -- osc.lua: remove scaleforcedwindow - - -Fixes and Minor Enhancements ----------------------------- - -- wayland: fix vertical resizing -- stats.lua: don't use ASS tags when use_ass is false -- video/out/wayland_common: set key state only on keyboard_enter keys -- input: add MP_KEY_STATE_SET_ONLY -- vo_gpu: use fallback colorspace for Dolby Vision -- video/out/wayland_common: don't pass mouse inputs on resizing edges -- hwdec_vulkan: allow using multiple decoding family queues -- hwdec_vulkan: update to new libavutil queue family API -- drm_prime: fix use of formats with modifiers -- build: bump minimum Windows version to 10 -- input/ipc-win: support fd:// for --input-ipc-client -- player/command: fix --force-window=yes acting like immediate -- sd_ass: fix margin y scale with font size -- sd_ass: fix sub scale with window when use_margins is enabled -- loadfile,select.lua: print bitrates of tracks -- wayland: avoid potential floating point errors while scaling -- vo_dmabuf_wayland: don't use -ve margins in window size calculation -- ytdl_hook.lua: allow changing try_ytdl_first during runtime -- wayland: fix missed int -> double conversion for cursor scaling -- player/loadfile: enable streams in order of types when loading file -- misc/natural_sort: avoid implementation-defined behavior in comparison -- demux: allow refresh seek for non-video streams -- demux_edl: fix infinite loop on empty EDL files -- d3d11: return minimum bitdepth for display output and swapchain -- stats.lua: add page 5 for currently selected tracks information -- autoload.lua: fix options update -- input: prevent MBTN_LEFT conflict with VO dragging -- TOOLS/autoload.lua: fix directory_mode and ext options -- player/video: fix incorrect VO frame duration and frame drops -- x11: correct position coordinates if mpv was launched with --fs -- vo_vaapi: fix use-after-free when quitting -- vo_vaapi: fix use-after-free of current frame -- playloop: don't loop when seeking to the end of cover art while paused -- build: dynamically generate mpv.desktop file protocols -- wayland: use wl->callback_surface for idle inhibitor creation -- wayland: cap xdg_wm_base at 4 if wm_capabilities aren't supported -- {options,player}: fix stream leaks -- console.lua: increase margins from the bottom-left corner -- external_files: detect language tags with hyphens -- player/loadfile: match language and subcodes -- player: normalize paths for resuming playback -- demux_mkv: fix image detection -- demux_mkv: make V_QUICKTIME codec detection generic -- osd: show left arrow when playing backwards -- wayland: set wl->scaling if there is no wl->current_output yet -- sub/osd: fix rounding when rescaling bitmap subtitle rects -- zsh-completion: complete --gpu-context -- stats.lua: show osd-dimensions property -- sub/lavc_conv: don't override style of converted teletext pages -- mac: make display-names unique to allow specific selection -- vo_dmabuf_wayland: use wl_fixed_from_int when setting viewport source -- vo_dmabuf_wayland: fix scaling for subsurface positioning -- demux: also read "CUESHEET" tag from stream metadata -- stats.lua: filter input bindings by typing them -- vo_{tct,sixel,kitty}: implement mouse support -- terminal-unix: ignore unhandled mouse CSI sequences -- terminal-unix: support mouse escape codes -- sd_ass: fix margins for all styles when overriding PlayResX -- stats.lua: inherit OSD styles -- options: fix runtime update of teletext-page -- ytdl_hook: add some more yt-dlp tags -- vulkan: don't tolerate suboptimal swapchain configurations -- vd_lavc: add Vulkan hardware decoding to autoprobe -- sub/osd: add log if osd rendering takes too long time -- vo_gpu_next: allow setting antiring value for cscale -- f_auto_filters: don't set interlaced-only for userdeint -- vo_dmabuf_wayland: reject formats not supported by the GPU -- ytdl_hook: make path and json available to other scripts +- f_hwtransfer: ensure that we convert to full range rgb with scale_vaapi +- win32: fix window size restore after maximize state +- build: fix dynamic generation of mpv.desktop file protocols +- player/sub: avoid pointlessly redecoding subs +- x11: remove nvidia blacklist logic from --x11-present=auto +- osc.lua: seek to the nearest chapter when right clicking the seekbar +- command: fix keybind command with sequence keys +- video/out/wayland_common: fix crash with multi-seat drag and drop +- demux: reclaim demux_packets to reduce memory allocator pressure +- demux_cue: only accept TRACK with AUDIO type +- player/loadfile: strip common filename part from external track title +- build: remove unused dvdread dependency +- wayland: fix vertical resizing and scaling issues +- console.lua: improve completion and visual appearance +- sub/osd: default to a semitransparent black back color +- player: improve playlist handling with prefetch +- drm: parse EDID using libdisplay-info (which is now a required dependency) +- win32: fix window size restore after maximize state +- hwdec_d3d11va: align image mapper dimensions to a multiple of 2 +- wayland: fix DnD with focus follow mouse +- player: store external filenames as normalized +- player: properly handle secondary subtitles on the terminal +- demux_mkv: add support for chroma location +- vo_dmabuf_wayland: improve and fix format selection +- player: fix combination of --loop-playlist + --shuffle + --prefetch-playlist This listing is not complete. Check DOCS/client-api-changes.rst for a history of changes to the client API, and DOCS/interface-changes.rst for a history of changes to other user-visible interfaces. -A complete changelog can be seen by running `git log v0.38.0..v0.39.0` -in the git repository or by visiting either -https://github.com/mpv-player/mpv/compare/v0.38.0...v0.39.0 or -https://git.srsfckn.biz/mpv/log/?qt=range&q=v0.38.0..v0.39.0 +A complete changelog can be seen by running `git log v0.39.0..v0.40.0` +in the git repository or by visiting +.