Unified · Split
| @@ -30,7 +30,141 @@ Interface changes · 29 unmodified lines | |||
| 30 | 30 | ||
| 31 | :: | 31 | :: |
| 32 | 32 | ||
| 33 | --- mpv 0.41.0 --- | ||
| 33 | --- mpv 0.40.0 --- | 34 | --- mpv 0.40.0 --- |
| 35 | - undeprecate list option suffixes that work with multiple items | ||
| 36 | - add `-del` to string list and keyvalue list options | ||
| 37 | - add `-clr` to keyvalue list options | ||
| 38 | - undeprecate `--gamma-factor` | ||
| 39 | - the `path` and `track-list/N/external-filename` properties now always | ||
| 40 | return a full, absolute path | ||
| 41 | - rename `--vd-lavc-software-fallback` to `--hwdec-software-fallback` | ||
| 42 | - rename `--sub-ass-line-spacing` to `--sub-line-spacing` | ||
| 43 | - rename `--sub-ass-shaper` to `--sub-shaper` | ||
| 44 | - rename `--sub-ass-hinting` to `--sub-hinting` | ||
| 45 | - rename `--load-osd-console` to `--load-console` | ||
| 46 | - remove `stats-term_width_limit` script-opt | ||
| 47 | - add `stats-term_clip` script-opt | ||
| 48 | - remove `stats-term_height_limit` script-opt | ||
| 49 | - remove `player` argument form `--media-controls`, it's handled internally | ||
| 50 | now. | ||
| 51 | - make `script-binding` command scalable; add `nonscalable` command prefix | ||
| 52 | to restore the old behavior | ||
| 53 | - deprecate `osc-message` script message in favor of `show-text` command | ||
| 54 | - deprecate `osc-chapterlist` script message in favor of `show-text | ||
| 55 | ${chapter-list}` | ||
| 56 | - deprecate `osc-playlist` script message in favor of `show-text | ||
| 57 | ${playlist}` | ||
| 58 | - deprecate `osc-tracklist` script message in favor of `show-text ${track- | ||
| 59 | list}` | ||
| 60 | - add `visibility_modes` script-opt to osc | ||
| 61 | - deprecate `--wayland-disable-vsync` | ||
| 62 | - add `--wayland-internal-vsync` as a replacement for `--wayland-disable- | ||
| 63 | vsync` | ||
| 64 | - deprecate `--cdda-span-a` and `--cdda-span-b` | ||
| 65 | - commands.lua is split out of console.lua. commands.lua runs and completes | ||
| 66 | commands and adds mpv's log entries to the console's log, while | ||
| 67 | console.lua handles the UI for other scripts | ||
| 68 | - add `--load-commands` option | ||
| 69 | - `script-binding console/enable` becomes `script-binding commands/open`, | ||
| 70 | though the console one is kept as an alias | ||
| 71 | - `script-message-to console type` becomes `script-message-to commands | ||
| 72 | type`, though the console one is kept as an alias. This also now | ||
| 73 | automatically closes the console after running the command. | ||
| 74 | - change the underlying type of the `aspect`, `par`, and `sar` sub- | ||
| 75 | properties to double from float | ||
| 76 | - add `--video-aspect-method=ignore` | ||
| 77 | - change `--video-aspect-override=no` to respect `--video-aspect-method` | ||
| 78 | option | ||
| 79 | - deprecate setting `--video-aspect-override` to `0` and `-1` | ||
| 80 | - change several OSC mouse bindings to select.lua functions | ||
| 81 | - add script-opts to configure what OSC buttons do when clicked | ||
| 82 | - remove `osc-playlist_osd` script-opt and behave as if it was off by | ||
| 83 | default; `playlist_osd=yes` can be replicated with `osc- | ||
| 84 | playlist_prev_mbtn_left_command=playlist-prev; show-text ${playlist} 3000` | ||
| 85 | and `osc-playlist_next_mbtn_left_command=playlist-next; show-text | ||
| 86 | ${playlist} 3000` | ||
| 87 | - remove `osc-chapters_osd` script-opt and behave as if it was off by | ||
| 88 | default; `chapter_osd=yes` can be replicated with `osc- | ||
| 89 | chapter_prev_mbtn_left_command=no-osd add chapter -1; show-text ${chapter- | ||
| 90 | list} 3000` and `osc-chapter_next_mbtn_left_command=no-osd add chapter 1; | ||
| 91 | show-text ${chapter-list} 3000` | ||
| 92 | - add script-opts to define custom buttons | ||
| 93 | - change `--prefetch-playlist`'s default to `yes` | ||
| 94 | - change `--osd-back-color` and `--sub-back-color` defaults to #AF000000 | ||
| 95 | - change `--geometry` so that it no longer unconditionally moves the window | ||
| 96 | on platforms where that is possible. Use `--force-window-position` or add | ||
| 97 | `+50%+50%` to your geometry command to get the old behavior back. | ||
| 98 | - all options that take filepaths as values are now properly expanded (i.e. | ||
| 99 | ~/ -> /home/$USER) | ||
| 100 | - all commands that take filepaths as arguments are now properly expanded | ||
| 101 | (i.e. ~/ -> /home/$USER) | ||
| 102 | - add `ytdl_hook-include` script-opt | ||
| 103 | - add `video-frame-info/gop-timecode`, `video-frame-info/smpte-timecode` and | ||
| 104 | `video-frame-info/estimated-smpte-timecode` | ||
| 105 | - add `term-clip-cc` | ||
| 106 | - add `sub-ass-prune-delay` option to control libass automatic pruning of | ||
| 107 | past | ||
| 108 | - events | ||
| 109 | - add `slimbottombar` and `slimtopbar` OSC layouts optimized for viewing | ||
| 110 | images | ||
| 111 | - add `osc-fadein` script-opt | ||
| 112 | - add `mpv://` protocol | ||
| 113 | - add `metadata` sub-property for `track-list` | ||
| 114 | - add `keep_open` flag to `mp.input.get()` and `mp.input.select()` | ||
| 115 | - `mp.input.get()` now closes automatically on submit, pass `keep_open = | ||
| 116 | true` to restore the old behavior | ||
| 117 | - add `autoselect_completion` flag to `mp.input.get()` | ||
| 118 | - add `history_path` key to `mp.input.get()` | ||
| 119 | - add `hearing-impaired`, `visual-impaired` and `attached-picture` flags to | ||
| 120 | track add command | ||
| 121 | - add `format` argument to `screenshot-raw` command | ||
| 122 | - add `display-page-n-toggle` script bindings to stats.lua, where n is a | ||
| 123 | page number | ||
| 124 | - add `demuxer-mkv-crop-compat` option | ||
| 125 | - add `current-watch-later-dir` property | ||
| 126 | - add `console-scale_with_window` script-opt | ||
| 127 | - add `console-margin-x` and `console-margin-y` script-opts | ||
| 128 | - add `console-background_alpha` `console-menu_outline_size` `console- | ||
| 129 | menu_outline_color` `console-corner_radius` `console-selected_color` and | ||
| 130 | `console-selected_back_color` script-opts | ||
| 131 | - add `--video-recenter` option | ||
| 132 | - add `nvidia-true-hdr` mode to vf_d3d11vpp | ||
| 133 | - add `--sub-scale-signs` to allow `--sub-scale` to also scale events | ||
| 134 | detected to be signs by libass | ||
| 135 | - add `--script-opt` alias for `--script-opts-append` | ||
| 136 | - add `--save-watch-history` and `--watch-history-path` options | ||
| 137 | - add `--osd-selected-color` and `--osd-selected-outline-color` options | ||
| 138 | - add `--osd-bar-marker-scale` and `--osd-bar-marker-min-size` options | ||
| 139 | - add `--osd-bar-marker-style` option | ||
| 140 | - add `--input-ime` to enable or disable the IME on supported VOs (Windows, | ||
| 141 | Wayland) | ||
| 142 | - add `--clipboard-monitor` option | ||
| 143 | - add `clipboard` property | ||
| 144 | - add `current-clipboard-backend` property | ||
| 145 | - add `--clipboard-backends` option | ||
| 146 | - add `--archive-exts` | ||
| 147 | - add `archive` to `--directory-filter-types`' default | ||
| 148 | - add `--playlist-exts` | ||
| 149 | - add `playlist` to `--directory-filter-types`' default | ||
| 150 | - add --audio-exclusive option support for ao=audiounit and make non- | ||
| 151 | exclusive the new default | ||
| 152 | - `sub-blur` is now applied by `sub-ass-override=force` with new enough | ||
| 153 | libass | ||
| 154 | - `stats-font_size`, `stats-border_size`, `stats-shadow_x_offset`, `stats- | ||
| 155 | shadow_y_offset` and `stats-plot_bg_border_width` script-opt values result | ||
| 156 | in 2.5 times smaller sizes in order to have the same sizes as the values | ||
| 157 | of equivalent OSD options like `--osd-font-size`. If you customized these | ||
| 158 | sizes, multiply them by 2.5 to get the previous sizes. | ||
| 159 | - ``glsl-shader-opts`` now has predefined parameters that can be used. See | ||
| 160 | the documentation for available values. | ||
| 161 | - `--hwdec=auto` now behaves like `--hwdec=auto-safe`; use `--hwdec=auto- | ||
| 162 | unsafe` to get the old behavior back | ||
| 163 | - Change auto profiles hook priority from 50 to 5 | ||
| 164 | - add optional `frames` and `flags` arguments to `frame-step` command | ||
| 165 | controlling the direction and amount of frames mpv steps through | ||
| 166 | - add optional `mute` flag to `frame-step` command which mutes the player | ||
| 167 | during the duration of the frame step | ||
| 34 | --- mpv 0.39.0 --- | 168 | --- mpv 0.39.0 --- |
| 35 | - turn `--cover-art-whitelist` into a list option | 169 | - turn `--cover-art-whitelist` into a list option |
| 36 | - reserve `user-data/osc` and `user-data/mpv` sub-paths for internal use | 170 | - reserve `user-data/osc` and `user-data/mpv` sub-paths for internal use |
| @@ -1,4 +0,0 @@ | |||
| 1 | change the underlying type of the `aspect`, `par`, and `sar` sub-properties to double from float | ||
| 2 | add `--video-aspect-method=ignore` | ||
| 3 | change `--video-aspect-override=no` to respect `--video-aspect-method` option | ||
| 4 | deprecate setting `--video-aspect-override` to `0` and `-1` | ||
| @@ -1 +0,0 @@ | |||
| 1 | add --audio-exclusive option support for ao=audiounit and make non-exclusive the new default | ||
| @@ -1 +0,0 @@ | |||
| 1 | Change auto profiles hook priority from 50 to 5 | ||
| @@ -1 +0,0 @@ | |||
| 1 | change `--osd-back-color` and `--sub-back-color` defaults to #AF000000 | ||
| @@ -1 +0,0 @@ | |||
| 1 | deprecate `--cdda-span-a` and `--cdda-span-b` | ||
| @@ -1,4 +0,0 @@ | |||
| 1 | add `--clipboard-monitor` option | ||
| 2 | add `clipboard` property | ||
| 3 | add `current-clipboard-backend` property | ||
| 4 | add `--clipboard-backends` option | ||
| @@ -1,4 +0,0 @@ | |||
| 1 | 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 | ||
| 2 | add `--load-commands` option | ||
| 3 | `script-binding console/enable` becomes `script-binding commands/open`, though the console one is kept as an alias | ||
| 4 | `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. | ||
| @@ -1 +0,0 @@ | |||
| 1 | add `console-margin-x` and `console-margin-y` script-opts | ||
| @@ -1 +0,0 @@ | |||
| 1 | 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 | ||
| @@ -1 +0,0 @@ | |||
| 1 | add `console-scale_with_window` script-opt | ||
| @@ -1 +0,0 @@ | |||
| 1 | add `current-watch-later-dir` property | ||
| @@ -1 +0,0 @@ | |||
| 1 | add `demuxer-mkv-crop-compat` option | ||
| @@ -1 +0,0 @@ | |||
| 1 | add `display-page-n-toggle` script bindings to stats.lua, where n is a page number | ||
| @@ -1,4 +0,0 @@ | |||
| 1 | add `--archive-exts` | ||
| 2 | add `archive` to `--directory-filter-types`' default | ||
| 3 | add `--playlist-exts` | ||
| 4 | add `playlist` to `--directory-filter-types`' default | ||
| @@ -1,2 +0,0 @@ | |||
| 1 | - add optional `frames` and `flags` arguments to `frame-step` command controlling the direction and amount of frames mpv steps through | ||
| 2 | - add optional `mute` flag to `frame-step` command which mutes the player during the duration of the frame step | ||
| @@ -1 +0,0 @@ | |||
| 1 | undeprecate `--gamma-factor` | ||
| @@ -1 +0,0 @@ | |||
| 1 | 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. | ||
| @@ -1 +0,0 @@ | |||
| 1 | ``glsl-shader-opts`` now has predefined parameters that can be used. See the documentation for available values. | ||
| @@ -1 +0,0 @@ | |||
| 1 | add `hearing-impaired`, `visual-impaired` and `attached-picture` flags to track add command | ||
| @@ -1 +0,0 @@ | |||
| 1 | rename `--vd-lavc-software-fallback` to `--hwdec-software-fallback` | ||
| @@ -1 +0,0 @@ | |||
| 1 | `--hwdec=auto` now behaves like `--hwdec=auto-safe`; use `--hwdec=auto-unsafe` to get the old behavior back | ||
| @@ -1,2 +0,0 @@ | |||
| 1 | add `--input-ime` to enable or disable the IME on supported VOs (Windows, Wayland) | ||
| 2 | disable IME by default; set `--input-ime=yes` to enable it on demand | ||
| @@ -1,3 +0,0 @@ | |||
| 1 | undeprecate list option suffixes that work with multiple items | ||
| 2 | add `-del` to string list and keyvalue list options | ||
| 3 | add `-clr` to keyvalue list options | ||
| @@ -1 +0,0 @@ | |||
| 1 | rename `--load-osd-console` to `--load-console` | ||
| @@ -1 +0,0 @@ | |||
| 1 | remove `player` argument form `--media-controls`, it's handled internally now. | ||
| @@ -1,4 +0,0 @@ | |||
| 1 | add `keep_open` flag to `mp.input.get()` and `mp.input.select()` | ||
| 2 | `mp.input.get()` now closes automatically on submit, pass `keep_open = true` to restore the old behavior | ||
| 3 | add `autoselect_completion` flag to `mp.input.get()` | ||
| 4 | add `history_path` key to `mp.input.get()` | ||
| @@ -1 +0,0 @@ | |||
| 1 | add `mpv://` protocol | ||
| @@ -1 +0,0 @@ | |||
| 1 | add `--vf=d3d11vpp=nvidia-true-hdr` | ||
| @@ -1,2 +0,0 @@ | |||
| 1 | all options that take filepaths as values are now properly expanded (i.e. ~/ -> /home/$USER) | ||
| 2 | all commands that take filepaths as arguments are now properly expanded (i.e. ~/ -> /home/$USER) | ||
| @@ -1,5 +0,0 @@ | |||
| 1 | change several OSC mouse bindings to select.lua functions | ||
| 2 | add script-opts to configure what OSC buttons do when clicked | ||
| 3 | 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` | ||
| 4 | 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` | ||
| 5 | add script-opts to define custom buttons | ||
| @@ -1 +0,0 @@ | |||
| 1 | add `osc-fadein` script-opt | ||
| @@ -1,5 +0,0 @@ | |||
| 1 | deprecate `osc-message` script message in favor of `show-text` command | ||
| 2 | deprecate `osc-chapterlist` script message in favor of `show-text ${chapter-list}` | ||
| 3 | deprecate `osc-playlist` script message in favor of `show-text ${playlist}` | ||
| 4 | deprecate `osc-tracklist` script message in favor of `show-text ${track-list}` | ||
| 5 | add `visibility_modes` script-opt to osc | ||
| @@ -1 +0,0 @@ | |||
| 1 | add `slimbottombar` and `slimtopbar` OSC layouts optimized for viewing images | ||
| @@ -1,2 +0,0 @@ | |||
| 1 | add `--osd-bar-marker-scale` and `--osd-bar-marker-min-size` options | ||
| 2 | add `--osd-bar-marker-style` option | ||
| @@ -1 +0,0 @@ | |||
| 1 | change `--prefetch-playlist`'s default to `yes` | ||
| @@ -1 +0,0 @@ | |||
| 1 | the `path` and `track-list/N/external-filename` properties now always return a full, absolute path | ||
| @@ -1 +0,0 @@ | |||
| 1 | add `format` argument to `screenshot-raw` command | ||
| @@ -1 +0,0 @@ | |||
| 1 | make `script-binding` command scalable; add `nonscalable` command prefix to restore the old behavior | ||
| @@ -1 +0,0 @@ | |||
| 1 | add `--script-opt` alias for `--script-opts-append` | ||
| @@ -1 +0,0 @@ | |||
| 1 | add `--osd-selected-color` and `--osd-selected-outline-color` options | ||
| @@ -1 +0,0 @@ | |||
| 1 | `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. | ||
| @@ -1,3 +0,0 @@ | |||
| 1 | remove `stats-term_width_limit` script-opt | ||
| 2 | add `stats-term_clip` script-opt | ||
| 3 | remove `stats-term_height_limit` script-opt | ||
| @@ -1,3 +0,0 @@ | |||
| 1 | rename `--sub-ass-line-spacing` to `--sub-line-spacing` | ||
| 2 | rename `--sub-ass-shaper` to `--sub-shaper` | ||
| 3 | rename `--sub-ass-hinting` to `--sub-hinting` | ||
| @@ -1 +0,0 @@ | |||
| 1 | `sub-blur` is now applied by `sub-ass-override=force` with new enough libass | ||
| @@ -1,2 +0,0 @@ | |||
| 1 | add `sub-ass-prune-delay` option to control libass automatic pruning of past | ||
| 2 | events | ||
| @@ -1 +0,0 @@ | |||
| 1 | add `--sub-scale-signs` to allow `--sub-scale` to also scale events detected to be signs by libass | ||
| @@ -1 +0,0 @@ | |||
| 1 | add `term-clip-cc` | ||
| @@ -1 +0,0 @@ | |||
| 1 | add `metadata` sub-property for `track-list` | ||
| @@ -1 +0,0 @@ | |||
| 1 | add `video-frame-info/gop-timecode`, `video-frame-info/smpte-timecode` and `video-frame-info/estimated-smpte-timecode` | ||
| @@ -1 +0,0 @@ | |||
| 1 | add `--video-recenter` option | ||
| @@ -1 +0,0 @@ | |||
| 1 | add `--save-watch-history` and `--watch-history-path` options | ||
| @@ -1,2 +0,0 @@ | |||
| 1 | deprecate `--wayland-disable-vsync` | ||
| 2 | add `--wayland-internal-vsync` as a replacement for `--wayland-disable-vsync` | ||
| @@ -1 +0,0 @@ | |||
| 1 | add `ytdl_hook-include` script-opt | ||
| @@ -1 +1 @@ | |||
| 1 | 0.39.0-UNKNOWN | 1 | 0.40.0 |
| @@ -1,205 +1,133 @@ | |||
| 1 | Release 0.39.0 | 1 | Release 0.40.0 |
| 2 | ============== | 2 | ============== |
| 3 | 3 | ||
| 4 | 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. | 4 | We are excited to announce the release of mpv 0.40.0. |
| 5 | 5 | ||
| 6 | Key highlights: | 6 | Key highlights: |
| 7 | 7 | ||
| 8 | * A new select.lua script, allowing users to easily choose files from playlists, tracks, chapters, output devices, and more. | 8 | * Console: Enhanced autocompletion and visual styling |
| 9 | * A native replacement for autoload.lua has been implemented. See --autocreate-playlist in the manual. | 9 | * OSC: New selection menu accessible by right-clicking common buttons |
| 10 | * NVIDIA RTX and Intel VSR scaling are now supported via the d3d11va filter. | 10 | * HDR is now natively supported when using direct rendering (DRM), |
| 11 | * Media controls are now supported on Windows. | 11 | as well as dmabuf-wayland on Linux |
| 12 | * Track selection has been improved, especially for multi-component languages like fr-CA. | 12 | * Native clipboard access for scripts via new `clipboard` property |
| 13 | * A new fifth page has been added to stats.lua, displaying track information. | 13 | * New command menu, with common actions easily accessible |
| 14 | * Compatibility with dmabuf-wayland has been significantly enhanced. | 14 | * Enhanced select.lua with new selection options for watch history, editions, DVD/Blu-Ray titles |
| 15 | * Multi-touch support has been introduced. | 15 | * New positioning.lua script script for cursor-centric zooming and drag to pan |
| 16 | * Better stream support for Blu-ray, DVD and CDDA | ||
| 17 | * Track selection improvements and better metadata display | ||
| 18 | * Added osd-box / sub-box / box profiles to easily enable box styled OSD/OSC | ||
| 19 | * Windows support in umpv helper script | ||
| 16 | 20 | ||
| 17 | This release requires FFmpeg 6.1 or newer and libplacebo 6.338.2 or newer. | 21 | This release requires FFmpeg 6.1 or newer and libplacebo 6.338.2 or newer. |
| 18 | 22 | ||
| 19 | 23 | # Features | |
| 20 | 24 | ||
| 21 | Features | 25 | ## New |
| 22 | -------- | 26 | |
| 23 | 27 | - vf_d3d11vpp: add NVIDIA RTX Video HDR support | |
| 24 | New | 28 | - context_drm_gl: add support for HDR metadata |
| 25 | ~~~ | 29 | - positioning.lua: add new script for video alignment and zooming |
| 26 | 30 | - umpv: add Windows support | |
| 27 | - vf_d3d11vpp: add support for Intel VSR and NVIDIA RTX scaling modes | 31 | - command: add clipboard property with native backends for Windows, macOS, and Wayland |
| 28 | - demux: add --autocreate-playlist | 32 | - select.lua: add watch history, edition, DVD/Blu-Ray titles and more selection options |
| 29 | - audio: add pitch-shifting feature | 33 | - input.conf: add cursor-centric zoom and drag-to-pan bindings |
| 30 | - win32: add Media Control support | 34 | - wayland: add support for wp-color-management-v1 protocol |
| 31 | - various: allow changing GPU API options at runtime | 35 | - console.lua: add persistent command history |
| 32 | - vo_gpu_next: support --gamma-factor | 36 | - stats.lua: add timecode display |
| 33 | - vf_vapoursynth: upgrade to VapourSynth API v4 | 37 | - options: add --playlist-exts and --archive-exts |
| 34 | - select.lua: add this script | 38 | - wayland_common: support IME usage via text-input-v3 |
| 35 | - console.lua: implement a command parser to complete more things | 39 | - command: add multiple track metadata and properties |
| 36 | - demux_mkv: demux Block Additional Mappings | 40 | - vo_gpu_next: add chroma location and HDR metadata to shader parameters |
| 37 | - cocoa-cb: add support for macOS color space transformation (EDR/HDR) | 41 | - player/screenshot: support more formats for screenshot-raw command |
| 38 | - powershell-completion: add PowerShell command line completion | 42 | - demux_mkv: add `--demuxer-mkv-crop-compat` option |
| 39 | - input: implement VO dragging deadzone | 43 | - misc/language: parse hi/sdh/cc tags from external subtitle tracks |
| 40 | - win32: support multitouch | 44 | - wayland: support xdg-activation |
| 41 | - wayland_common: support multitouch | 45 | - player: add mpv:// protocol |
| 42 | - demux/packet: add support for ITU T.35 metadata in Matroska | 46 | |
| 43 | - demux: support VVC Matroska demux | 47 | |
| 44 | - terminal-win: support mouse input events | 48 | ## Changed |
| 45 | - x11_common: detect wm support for _NET_WM_STATE_SKIP_TASKBAR | 49 | |
| 46 | 50 | - meson: build libmpv by default | |
| 47 | 51 | - command: enhance track and playlist display information | |
| 48 | Changed | 52 | - input.conf: improve numpad key bindings |
| 49 | ~~~~~~~ | 53 | - osc.lua: add custom buttons support and improved mouse bindings |
| 50 | 54 | - console.lua: inherit OSD styles and colors | |
| 51 | - loadfile: improve the format of terminal track information | 55 | - options: default to --prefetch-playlist=yes |
| 52 | - options: add secondary-{sid,sub-delay} to watch_later_options | 56 | - osc.lua: add slimbottombar and slimtopbar layouts |
| 53 | - input: map Num 5 to distinct value when numlock is off | 57 | - command: improve frame-step to go through multiple frames |
| 54 | - input.conf: make Alt+BS reset panscan | 58 | - wayland: use wp-presentation v2 if available |
| 55 | - msg: don't use bold colors and instead use bright ones | 59 | - various: reorganize options into more logical groups |
| 56 | 60 | - vo_gpu_next: improve target colorspace handling | |
| 57 | 61 | - options: disable `--input-ime` by default (enabled on demand) | |
| 58 | Options and Commands | 62 | |
| 59 | -------------------- | 63 | |
| 60 | 64 | # Options and Commands | |
| 61 | Added | 65 | |
| 62 | ~~~~~ | 66 | ## Added |
| 63 | 67 | ||
| 64 | - sub: add ass-video-aspect-override option | 68 | - sd_ass: introduce sub-ass-prune-delay |
| 65 | - input/keycodes: add KP_ADD/SUBTRACT/MULTIPLY/DIVIDE keycodes | 69 | - player: add an optional mute flag when framestepping |
| 66 | - demux_playlist: use --directory-filter-types for --autocreate-playlist | 70 | - command: add clipboard/text-primary property |
| 67 | - options: add --{video,audio,image}-exts | 71 | - command: add current-clipboard-backend property |
| 68 | - player: don't decrement --ab-loop-count=N and add remaining-ab-loops | 72 | - command: add notify-property command |
| 69 | - player: don't decrement --loop-file=N and add remaining-file-loops | 73 | - options: add --script-opt alias for --script-opts-append |
| 70 | - sub: add (sub/osd)-border-style; renaming sub options | 74 | - options: add --osd-bar-marker-{size,style} options |
| 71 | - input.conf: add zoom, pan, scale and rotate keybinds for numpad | 75 | - options: add --input-ime for improved text input |
| 72 | - wayland: add a --wayland-present option | 76 | - options: add --video-recenter |
| 73 | - mac/menu: add option to disable default shortcuts | 77 | - options: add --clipboard-backends |
| 74 | - stats.lua: display file tags | 78 | - options: add --wayland-internal-vsync |
| 75 | - osc.lua: add option to use display fps for update interval | 79 | - options: add --sub-scale-signs |
| 76 | - osc.lua: add option to make rendering smoother | 80 | |
| 77 | - opengl: add --egl-output-format, --egl-config-id | 81 | |
| 78 | - vf_vapoursynth: add parameter to pass arbitrary string to script | 82 | ## Changed |
| 79 | - options: add --osd-playlist-entry | 83 | |
| 80 | - {osc,stats}.lua: add 'auto' value to vidscale option | 84 | - options: rename --load-osd-console to --load-console |
| 81 | - input/cmd: add nonrepeatable prefix | 85 | - player: improve track selection for multi-component languages |
| 82 | - player: add option-info/<name>/expects-file | 86 | - options: improve frame-step command to handle multiple frames |
| 83 | - command: add dolby-vision-profile and dolby-vision-level to track-list | 87 | - input.conf: make Alt+BS reset --video-align-{x,y} |
| 84 | - scripting: add mp.input.select() | 88 | - command: print track metadata when changing track |
| 85 | - command: add normalize-path command | 89 | - command: print track-list with enhanced metadata |
| 86 | - OSC: implemented user configurable colors | 90 | |
| 87 | - ao_wasapi: add `--wasapi-exclusive-buffer` option | 91 | |
| 88 | - stats.lua: add option to disable scale with video size | 92 | ## Deprecated |
| 89 | - stats.lua: add option to control plot border width | 93 | |
| 90 | - player/command: add track-list/N/decoder | 94 | - options: deprecate `--gamma-auto` (use gamma-auto.lua script instead) |
| 91 | - sd_ass: add `sub-vsfilter-bidi-compat` to enable vsfilter bidi compat | 95 | - options: deprecate undocumented --cdda-span-{a,b} options |
| 92 | - {x11,w32}_common: implement --show-in-taskbar option | 96 | |
| 93 | 97 | ||
| 94 | 98 | # Fixes and Minor Enhancements | |
| 95 | Changed | 99 | |
| 96 | ~~~~~~~ | 100 | - f_hwtransfer: ensure that we convert to full range rgb with scale_vaapi |
| 97 | 101 | - win32: fix window size restore after maximize state | |
| 98 | - sub: merge vsfilter-aspect and vsfilter-blur-compat options | 102 | - build: fix dynamic generation of mpv.desktop file protocols |
| 99 | - input.conf: swap the positions of values for `ctrl+h` binding | 103 | - player/sub: avoid pointlessly redecoding subs |
| 100 | - video/csputils: remove space from choice option for chroma loc | 104 | - x11: remove nvidia blacklist logic from --x11-present=auto |
| 101 | - input.conf: add KP_DIVIDE/KP_MULTIPLY key bindings | 105 | - osc.lua: seek to the nearest chapter when right clicking the seekbar |
| 102 | - external_files: allow specifying --cover-art-whitelist filenames | 106 | - command: fix keybind command with sequence keys |
| 103 | - x11_common: handle runtime keepaspect/keepaspect-window change | 107 | - video/out/wayland_common: fix crash with multi-seat drag and drop |
| 104 | - video/out/gpu/context: convert --gpu-api to object settings list | 108 | - demux: reclaim demux_packets to reduce memory allocator pressure |
| 105 | - playlist: let playlist-next go to first item if player is idle | 109 | - demux_cue: only accept TRACK with AUDIO type |
| 106 | - playlist: let playlist-prev go to last item in playlist | 110 | - player/loadfile: strip common filename part from external track title |
| 107 | - options: remove deprecated auto choice for --mute | 111 | - build: remove unused dvdread dependency |
| 108 | - player/command: alias playback-time to time-pos | 112 | - wayland: fix vertical resizing and scaling issues |
| 109 | - input.conf: change 'u' binding to cycle between 'force' and default | 113 | - console.lua: improve completion and visual appearance |
| 110 | - options: make sub-ass-override default to 'scale' | 114 | - sub/osd: default to a semitransparent black back color |
| 111 | - sd_ass: only set sub-scale for 'scale', 'force' or 'strip' | 115 | - player: improve playlist handling with prefetch |
| 112 | - player/command: mark sub-text-ass as deprecated | 116 | - drm: parse EDID using libdisplay-info (which is now a required dependency) |
| 113 | - player/command: add sub-text/ass-full sub-property | 117 | - win32: fix window size restore after maximize state |
| 114 | - player/command: move sub-text-ass to a sub-property | 118 | - hwdec_d3d11va: align image mapper dimensions to a multiple of 2 |
| 115 | 119 | - wayland: fix DnD with focus follow mouse | |
| 116 | 120 | - player: store external filenames as normalized | |
| 117 | Removed | 121 | - player: properly handle secondary subtitles on the terminal |
| 118 | ~~~~~~~ | 122 | - demux_mkv: add support for chroma location |
| 119 | 123 | - vo_dmabuf_wayland: improve and fix format selection | |
| 120 | - command: remove deprecated packet-*-bitrate properties | 124 | - player: fix combination of --loop-playlist + --shuffle + --prefetch-playlist |
| 121 | - console.lua: remove the scale script-opt | ||
| 122 | - osc.lua: remove scaleforcedwindow | ||
| 123 | |||
| 124 | |||
| 125 | Fixes and Minor Enhancements | ||
| 126 | ---------------------------- | ||
| 127 | |||
| 128 | - wayland: fix vertical resizing | ||
| 129 | - stats.lua: don't use ASS tags when use_ass is false | ||
| 130 | - video/out/wayland_common: set key state only on keyboard_enter keys | ||
| 131 | - input: add MP_KEY_STATE_SET_ONLY | ||
| 132 | - vo_gpu: use fallback colorspace for Dolby Vision | ||
| 133 | - video/out/wayland_common: don't pass mouse inputs on resizing edges | ||
| 134 | - hwdec_vulkan: allow using multiple decoding family queues | ||
| 135 | - hwdec_vulkan: update to new libavutil queue family API | ||
| 136 | - drm_prime: fix use of formats with modifiers | ||
| 137 | - build: bump minimum Windows version to 10 | ||
| 138 | - input/ipc-win: support fd:// for --input-ipc-client | ||
| 139 | - player/command: fix --force-window=yes acting like immediate | ||
| 140 | - sd_ass: fix margin y scale with font size | ||
| 141 | - sd_ass: fix sub scale with window when use_margins is enabled | ||
| 142 | - loadfile,select.lua: print bitrates of tracks | ||
| 143 | - wayland: avoid potential floating point errors while scaling | ||
| 144 | - vo_dmabuf_wayland: don't use -ve margins in window size calculation | ||
| 145 | - ytdl_hook.lua: allow changing try_ytdl_first during runtime | ||
| 146 | - wayland: fix missed int -> double conversion for cursor scaling | ||
| 147 | - player/loadfile: enable streams in order of types when loading file | ||
| 148 | - misc/natural_sort: avoid implementation-defined behavior in comparison | ||
| 149 | - demux: allow refresh seek for non-video streams | ||
| 150 | - demux_edl: fix infinite loop on empty EDL files | ||
| 151 | - d3d11: return minimum bitdepth for display output and swapchain | ||
| 152 | - stats.lua: add page 5 for currently selected tracks information | ||
| 153 | - autoload.lua: fix options update | ||
| 154 | - input: prevent MBTN_LEFT conflict with VO dragging | ||
| 155 | - TOOLS/autoload.lua: fix directory_mode and ext options | ||
| 156 | - player/video: fix incorrect VO frame duration and frame drops | ||
| 157 | - x11: correct position coordinates if mpv was launched with --fs | ||
| 158 | - vo_vaapi: fix use-after-free when quitting | ||
| 159 | - vo_vaapi: fix use-after-free of current frame | ||
| 160 | - playloop: don't loop when seeking to the end of cover art while paused | ||
| 161 | - build: dynamically generate mpv.desktop file protocols | ||
| 162 | - wayland: use wl->callback_surface for idle inhibitor creation | ||
| 163 | - wayland: cap xdg_wm_base at 4 if wm_capabilities aren't supported | ||
| 164 | - {options,player}: fix stream leaks | ||
| 165 | - console.lua: increase margins from the bottom-left corner | ||
| 166 | - external_files: detect language tags with hyphens | ||
| 167 | - player/loadfile: match language and subcodes | ||
| 168 | - player: normalize paths for resuming playback | ||
| 169 | - demux_mkv: fix image detection | ||
| 170 | - demux_mkv: make V_QUICKTIME codec detection generic | ||
| 171 | - osd: show left arrow when playing backwards | ||
| 172 | - wayland: set wl->scaling if there is no wl->current_output yet | ||
| 173 | - sub/osd: fix rounding when rescaling bitmap subtitle rects | ||
| 174 | - zsh-completion: complete --gpu-context | ||
| 175 | - stats.lua: show osd-dimensions property | ||
| 176 | - sub/lavc_conv: don't override style of converted teletext pages | ||
| 177 | - mac: make display-names unique to allow specific selection | ||
| 178 | - vo_dmabuf_wayland: use wl_fixed_from_int when setting viewport source | ||
| 179 | - vo_dmabuf_wayland: fix scaling for subsurface positioning | ||
| 180 | - demux: also read "CUESHEET" tag from stream metadata | ||
| 181 | - stats.lua: filter input bindings by typing them | ||
| 182 | - vo_{tct,sixel,kitty}: implement mouse support | ||
| 183 | - terminal-unix: ignore unhandled mouse CSI sequences | ||
| 184 | - terminal-unix: support mouse escape codes | ||
| 185 | - sd_ass: fix margins for all styles when overriding PlayResX | ||
| 186 | - stats.lua: inherit OSD styles | ||
| 187 | - options: fix runtime update of teletext-page | ||
| 188 | - ytdl_hook: add some more yt-dlp tags | ||
| 189 | - vulkan: don't tolerate suboptimal swapchain configurations | ||
| 190 | - vd_lavc: add Vulkan hardware decoding to autoprobe | ||
| 191 | - sub/osd: add log if osd rendering takes too long time | ||
| 192 | - vo_gpu_next: allow setting antiring value for cscale | ||
| 193 | - f_auto_filters: don't set interlaced-only for userdeint | ||
| 194 | - vo_dmabuf_wayland: reject formats not supported by the GPU | ||
| 195 | - ytdl_hook: make path and json available to other scripts | ||
| 196 | 125 | ||
| 197 | 126 | ||
| 198 | This listing is not complete. Check DOCS/client-api-changes.rst for a history | 127 | This listing is not complete. Check DOCS/client-api-changes.rst for a history |
| 199 | of changes to the client API, and DOCS/interface-changes.rst for a history | 128 | of changes to the client API, and DOCS/interface-changes.rst for a history |
| 200 | of changes to other user-visible interfaces. | 129 | of changes to other user-visible interfaces. |
| 201 | 130 | ||
| 202 | A complete changelog can be seen by running `git log v0.38.0..v0.39.0` | 131 | A complete changelog can be seen by running `git log v0.39.0..v0.40.0` |
| 203 | in the git repository or by visiting either | 132 | in the git repository or by visiting |
| 204 | https://github.com/mpv-player/mpv/compare/v0.38.0...v0.39.0 or | 133 | <https://github.com/mpv-player/mpv/compare/v0.39.0...v0.40.0>. |
| 205 | https://git.srsfckn.biz/mpv/log/?qt=range&q=v0.38.0..v0.39.0 | ||