diff --git a/DOCS/interface-changes.rst b/DOCS/interface-changes.rst index e7f9a33afe..1b11adb196 100644 --- a/DOCS/interface-changes.rst +++ b/DOCS/interface-changes.rst @@ -30,7 +30,72 @@ Interface changes :: + --- mpv 0.42.0 --- --- mpv 0.41.0 --- + - the value of `--tls-ca-file` is now expanded as a path + - the value of `--tls-cert-file` is now expanded as a path + - the value of `--tls-key-file` is now expanded as a path + - the `--sub-sdh-enclosures` option is now a string list option + - rename `console-selected_color` script-opt to `console-focused_color` + - rename `console-selected_back_color` script-opt to `console- + focused_back_color` + - mediacodec_embed is no longer the default `vo` on Android. Set the option + explicitly if you want to use it and are aware of the limitations. + - change `--target-colorspace-hint` to `auto` by default. Auto mode will + also enable hint for SDR formats if target metadata is reported by current + output context. + - change `--prefetch-playlist` default to `no` + - add `--clipboard-xwayland` option + - add `video-params/prim-*` properties + - add `stats-plot_cache` script-opt + - disable `stats-plot_{perfdata,vsync_ratio,vsync_jitter}` by default + - add `scaled` and `osd` flags to screenshot commands + - add `forced` flag to track add commands + - add `default` flag to track add commands + - add `console-monospace_font` script-opt + - remove `console-font` script-opt + - add `console-gap` script-opt + - add `console-exact_match` script-opt + - make `console-case_sensitive` only affect exact searches and change the to + default to no on platforms other than Windows + - add `commands-remember_input` script-opt + - add `--wid=0` support for win32 + - add `--vo-kitty-auto-multiplexer-passthrough=` + - add `--vf=format=transfer` alias + - add `--vf=format=min-luma` + - add `--vf=format=max-luma` + - add `--vf=format=max-cll` + - add `--vf=format=max-fall` + - add `--treat-srgb-as-power22` + - add `--sdr-adjust-gamma` + - add `--target-colorspace-hint-strict` option + - add `--target-colorspace-hint-mode` option + - add `--sub-hdr-peak` option + - add `--sub-fix-timing-threshold` + - add `--sub-fix-timing-keep` + - add `--register` and `--unregister` + - add `--osd-prune-delay` + - add `--osd-glyph-limit` + - add `--osd-bitmap-max-size` + - add `--sub-glyph-limit` + - add `--sub-bitmap-max-size` + - add `--osd-shaper` + - add `--input-tablet-emulate-mouse` option + - add `--image-subs-hdr-peak` option + - add `--hwdec-threads` + - add `--hdr-reference-white` + - add `--d3d11-output-mode` enable use specific output mode for creating the + D3D11 swapchain + - add `--d3d11-composition-size=` support for d3d11 composition mode + - add `--border-background=blur` + - add `--background-blur-radius` + - add `--bluray-angle` + - add `--background-tile-size` option + - add `--background-tile-color-0` and `--background-tile-color-1` options + - add --audio-set-media-role, disabled by default. This effectively changes + the behavior for ao_pipewire + - `encoding-profiles.conf` is no longer installed by default into the system + configuration directory and is instead installed in the data directory --- mpv 0.40.0 --- - undeprecate list option suffixes that work with multiple items - add `-del` to string list and keyvalue list options diff --git a/DOCS/interface-changes/audio-set-media-role.txt b/DOCS/interface-changes/audio-set-media-role.txt deleted file mode 100644 index 60b74eb33f..0000000000 --- a/DOCS/interface-changes/audio-set-media-role.txt +++ /dev/null @@ -1 +0,0 @@ -add --audio-set-media-role, disabled by default. This effectively changes the behavior for ao_pipewire diff --git a/DOCS/interface-changes/background-tile.txt b/DOCS/interface-changes/background-tile.txt deleted file mode 100644 index 1bfe169d3a..0000000000 --- a/DOCS/interface-changes/background-tile.txt +++ /dev/null @@ -1,2 +0,0 @@ -add `--background-tile-size` option -add `--background-tile-color-0` and `--background-tile-color-1` options diff --git a/DOCS/interface-changes/bluray-angle.txt b/DOCS/interface-changes/bluray-angle.txt deleted file mode 100644 index 82ae054b13..0000000000 --- a/DOCS/interface-changes/bluray-angle.txt +++ /dev/null @@ -1 +0,0 @@ -add `--bluray-angle` diff --git a/DOCS/interface-changes/border-background-blur.txt b/DOCS/interface-changes/border-background-blur.txt deleted file mode 100644 index 184e7ace53..0000000000 --- a/DOCS/interface-changes/border-background-blur.txt +++ /dev/null @@ -1,2 +0,0 @@ -add `--border-background=blur` -add `--background-blur-radius` diff --git a/DOCS/interface-changes/commands-remember-input.txt b/DOCS/interface-changes/commands-remember-input.txt deleted file mode 100644 index 87a87eb316..0000000000 --- a/DOCS/interface-changes/commands-remember-input.txt +++ /dev/null @@ -1 +0,0 @@ -add `commands-remember_input` script-opt diff --git a/DOCS/interface-changes/configurable-sub-fix-timing.txt b/DOCS/interface-changes/configurable-sub-fix-timing.txt deleted file mode 100644 index 590440d40a..0000000000 --- a/DOCS/interface-changes/configurable-sub-fix-timing.txt +++ /dev/null @@ -1,2 +0,0 @@ -add `--sub-fix-timing-threshold` -add `--sub-fix-timing-keep` diff --git a/DOCS/interface-changes/console-exact_match.txt b/DOCS/interface-changes/console-exact_match.txt deleted file mode 100644 index d465d7169d..0000000000 --- a/DOCS/interface-changes/console-exact_match.txt +++ /dev/null @@ -1,2 +0,0 @@ -add `console-exact_match` script-opt -make `console-case_sensitive` only affect exact searches and change the to default to no on platforms other than Windows diff --git a/DOCS/interface-changes/console-focused-color.txt b/DOCS/interface-changes/console-focused-color.txt deleted file mode 100644 index 41a43eaac3..0000000000 --- a/DOCS/interface-changes/console-focused-color.txt +++ /dev/null @@ -1,2 +0,0 @@ -rename `console-selected_color` script-opt to `console-focused_color` -rename `console-selected_back_color` script-opt to `console-focused_back_color` diff --git a/DOCS/interface-changes/console-font.txt b/DOCS/interface-changes/console-font.txt deleted file mode 100644 index 2f0c97c5dc..0000000000 --- a/DOCS/interface-changes/console-font.txt +++ /dev/null @@ -1,2 +0,0 @@ -add `console-monospace_font` script-opt -remove `console-font` script-opt diff --git a/DOCS/interface-changes/console-gap.txt b/DOCS/interface-changes/console-gap.txt deleted file mode 100644 index 59e57c1993..0000000000 --- a/DOCS/interface-changes/console-gap.txt +++ /dev/null @@ -1 +0,0 @@ -add `console-gap` script-opt diff --git a/DOCS/interface-changes/context-menu.rst b/DOCS/interface-changes/context-menu.rst deleted file mode 100644 index ec80431880..0000000000 --- a/DOCS/interface-changes/context-menu.rst +++ /dev/null @@ -1 +0,0 @@ -add `--load-context-menu` option diff --git a/DOCS/interface-changes/default.txt b/DOCS/interface-changes/default.txt deleted file mode 100644 index dad158a09d..0000000000 --- a/DOCS/interface-changes/default.txt +++ /dev/null @@ -1 +0,0 @@ -add `default` flag to track add commands diff --git a/DOCS/interface-changes/encoding-profiles.txt b/DOCS/interface-changes/encoding-profiles.txt deleted file mode 100644 index 7dce013510..0000000000 --- a/DOCS/interface-changes/encoding-profiles.txt +++ /dev/null @@ -1 +0,0 @@ -`encoding-profiles.conf` is no longer installed by default into the system configuration directory and is instead installed in the data directory diff --git a/DOCS/interface-changes/forced.txt b/DOCS/interface-changes/forced.txt deleted file mode 100644 index b03742b55c..0000000000 --- a/DOCS/interface-changes/forced.txt +++ /dev/null @@ -1 +0,0 @@ -add `forced` flag to track add commands diff --git a/DOCS/interface-changes/hwdec-threads.txt b/DOCS/interface-changes/hwdec-threads.txt deleted file mode 100644 index 6b5c93b3d0..0000000000 --- a/DOCS/interface-changes/hwdec-threads.txt +++ /dev/null @@ -1 +0,0 @@ -add `--hwdec-threads` diff --git a/DOCS/interface-changes/image-subs-hdr-peak.txt b/DOCS/interface-changes/image-subs-hdr-peak.txt deleted file mode 100644 index 6ccf32aaab..0000000000 --- a/DOCS/interface-changes/image-subs-hdr-peak.txt +++ /dev/null @@ -1 +0,0 @@ -add `--image-subs-hdr-peak` option diff --git a/DOCS/interface-changes/kitty-passthrough.txt b/DOCS/interface-changes/kitty-passthrough.txt deleted file mode 100644 index 244becaaa4..0000000000 --- a/DOCS/interface-changes/kitty-passthrough.txt +++ /dev/null @@ -1 +0,0 @@ -add `--vo-kitty-auto-multiplexer-passthrough=` diff --git a/DOCS/interface-changes/mediacodec_embed.txt b/DOCS/interface-changes/mediacodec_embed.txt deleted file mode 100644 index b6d71e4e0c..0000000000 --- a/DOCS/interface-changes/mediacodec_embed.txt +++ /dev/null @@ -1 +0,0 @@ -mediacodec_embed is no longer the default `vo` on Android, set the option explicitly if you want to use it and are aware of the limitations. diff --git a/DOCS/interface-changes/mpv-register.txt b/DOCS/interface-changes/mpv-register.txt deleted file mode 100644 index 9da0fdb5cc..0000000000 --- a/DOCS/interface-changes/mpv-register.txt +++ /dev/null @@ -1 +0,0 @@ -Add `--register` and `--unregister` diff --git a/DOCS/interface-changes/osd-cache-opts.txt b/DOCS/interface-changes/osd-cache-opts.txt deleted file mode 100644 index acfab38395..0000000000 --- a/DOCS/interface-changes/osd-cache-opts.txt +++ /dev/null @@ -1,6 +0,0 @@ -add `--osd-prune-delay` -add `--osd-glyph-limit` -add `--osd-bitmap-max-size` -add `--sub-glyph-limit` -add `--sub-bitmap-max-size` -add `--osd-shaper` diff --git a/DOCS/interface-changes/playlist-exts.rst b/DOCS/interface-changes/playlist-exts.rst deleted file mode 100644 index 8adaf27c84..0000000000 --- a/DOCS/interface-changes/playlist-exts.rst +++ /dev/null @@ -1 +0,0 @@ -add `cue` to `--playlist-exts`' default value diff --git a/DOCS/interface-changes/playlist-remove.rst b/DOCS/interface-changes/playlist-remove.rst deleted file mode 100644 index 96e3a19159..0000000000 --- a/DOCS/interface-changes/playlist-remove.rst +++ /dev/null @@ -1 +0,0 @@ -remove undocumented optional argument usage for `playlist-remove` command diff --git a/DOCS/interface-changes/prefetch-playlist.txt b/DOCS/interface-changes/prefetch-playlist.txt deleted file mode 100644 index 5e6b6f2345..0000000000 --- a/DOCS/interface-changes/prefetch-playlist.txt +++ /dev/null @@ -1 +0,0 @@ -change `--prefetch-playlist` default to `no` diff --git a/DOCS/interface-changes/screenshot-flags.txt b/DOCS/interface-changes/screenshot-flags.txt deleted file mode 100644 index 0ee8556b4b..0000000000 --- a/DOCS/interface-changes/screenshot-flags.txt +++ /dev/null @@ -1 +0,0 @@ -add `scaled` and `osd` flags to screenshot commands diff --git a/DOCS/interface-changes/sdr-reference-white.txt b/DOCS/interface-changes/sdr-reference-white.txt deleted file mode 100644 index 6009421ad7..0000000000 --- a/DOCS/interface-changes/sdr-reference-white.txt +++ /dev/null @@ -1 +0,0 @@ -add `--hdr-reference-white` diff --git a/DOCS/interface-changes/stats-plot-cache.txt b/DOCS/interface-changes/stats-plot-cache.txt deleted file mode 100644 index a08c6fda02..0000000000 --- a/DOCS/interface-changes/stats-plot-cache.txt +++ /dev/null @@ -1,2 +0,0 @@ -add `stats-plot_cache` script-opt -disable `stats-plot_{perfdata,vsync_ratio,vsync_jitter}` by default diff --git a/DOCS/interface-changes/sub-hdr-peak.txt b/DOCS/interface-changes/sub-hdr-peak.txt deleted file mode 100644 index 3a784132f8..0000000000 --- a/DOCS/interface-changes/sub-hdr-peak.txt +++ /dev/null @@ -1 +0,0 @@ -add `--sub-hdr-peak` option diff --git a/DOCS/interface-changes/sub-sdh-enclosures.txt b/DOCS/interface-changes/sub-sdh-enclosures.txt deleted file mode 100644 index 5cd06c3f15..0000000000 --- a/DOCS/interface-changes/sub-sdh-enclosures.txt +++ /dev/null @@ -1 +0,0 @@ -the `--sub-sdh-enclosures` option is now a string list option diff --git a/DOCS/interface-changes/tablet-input.txt b/DOCS/interface-changes/tablet-input.txt deleted file mode 100644 index 77bc1f9ad8..0000000000 --- a/DOCS/interface-changes/tablet-input.txt +++ /dev/null @@ -1 +0,0 @@ -add `--input-tablet-emulate-mouse` option diff --git a/DOCS/interface-changes/target-colorspace-hint-mode.txt b/DOCS/interface-changes/target-colorspace-hint-mode.txt deleted file mode 100644 index 8ce2d69dad..0000000000 --- a/DOCS/interface-changes/target-colorspace-hint-mode.txt +++ /dev/null @@ -1 +0,0 @@ -add `--target-colorspace-hint-mode` option diff --git a/DOCS/interface-changes/target-colorspace-hint-strict.txt b/DOCS/interface-changes/target-colorspace-hint-strict.txt deleted file mode 100644 index bb1025b76a..0000000000 --- a/DOCS/interface-changes/target-colorspace-hint-strict.txt +++ /dev/null @@ -1 +0,0 @@ -add `--target-colorspace-hint-strict` option diff --git a/DOCS/interface-changes/target-colorspace-hint.txt b/DOCS/interface-changes/target-colorspace-hint.txt deleted file mode 100644 index b6a37f9744..0000000000 --- a/DOCS/interface-changes/target-colorspace-hint.txt +++ /dev/null @@ -1 +0,0 @@ -Change `--target-colorspace-hint` to `auto` by default. Auto mode will also enable hint for SDR formats if target metadata is reported by current output context. diff --git a/DOCS/interface-changes/target-prim.txt b/DOCS/interface-changes/target-prim.txt deleted file mode 100644 index b6bbf918d1..0000000000 --- a/DOCS/interface-changes/target-prim.txt +++ /dev/null @@ -1 +0,0 @@ -add `video-params/prim-*` properties diff --git a/DOCS/interface-changes/tls-options.txt b/DOCS/interface-changes/tls-options.txt deleted file mode 100644 index 052fb47bb7..0000000000 --- a/DOCS/interface-changes/tls-options.txt +++ /dev/null @@ -1,3 +0,0 @@ -the value of `--tls-ca-file` is now expanded as a path -the value of `--tls-cert-file` is now expanded as a path -the value of `--tls-key-file` is now expanded as a path diff --git a/DOCS/interface-changes/treat-srgb-as-power22.txt b/DOCS/interface-changes/treat-srgb-as-power22.txt deleted file mode 100644 index 136252765a..0000000000 --- a/DOCS/interface-changes/treat-srgb-as-power22.txt +++ /dev/null @@ -1,2 +0,0 @@ -add `--treat-srgb-as-power22` -add `--sdr-adjust-gamma` diff --git a/DOCS/interface-changes/vf_format.txt b/DOCS/interface-changes/vf_format.txt deleted file mode 100644 index 5a2892dd48..0000000000 --- a/DOCS/interface-changes/vf_format.txt +++ /dev/null @@ -1,5 +0,0 @@ -add `--vf=format=transfer` alias -add `--vf=format=min-luma` -add `--vf=format=max-luma` -add `--vf=format=max-cll` -add `--vf=format=max-fall` diff --git a/DOCS/interface-changes/vo-d3d11.txt b/DOCS/interface-changes/vo-d3d11.txt deleted file mode 100644 index 18d3bf7b28..0000000000 --- a/DOCS/interface-changes/vo-d3d11.txt +++ /dev/null @@ -1,2 +0,0 @@ -add `--d3d11-output-mode` enable use specific output mode for creating the D3D11 swapchain. -add `--d3d11-composition-size=` support for d3d11 composition mode. diff --git a/DOCS/interface-changes/win32-wid0.txt b/DOCS/interface-changes/win32-wid0.txt deleted file mode 100644 index 83ee2a671d..0000000000 --- a/DOCS/interface-changes/win32-wid0.txt +++ /dev/null @@ -1 +0,0 @@ -add `--wid=0` support for win32 diff --git a/DOCS/interface-changes/x11-clipboard.txt b/DOCS/interface-changes/x11-clipboard.txt deleted file mode 100644 index b1df011d2b..0000000000 --- a/DOCS/interface-changes/x11-clipboard.txt +++ /dev/null @@ -1,2 +0,0 @@ -add `x11` clipboard backend -add `--clipboard-xwayland` option diff --git a/MPV_VERSION b/MPV_VERSION index 7e8fac57bc..72a8a6313b 100644 --- a/MPV_VERSION +++ b/MPV_VERSION @@ -1 +1 @@ -0.40.0-UNKNOWN +0.41.0 diff --git a/RELEASE_NOTES b/RELEASE_NOTES index 416af29567..0a15dfbd3c 100644 --- a/RELEASE_NOTES +++ b/RELEASE_NOTES @@ -1,22 +1,20 @@ -Release 0.40.0 +Release 0.41.0 ============== -We are excited to announce the release of mpv 0.40.0. +We are excited to announce the release of mpv 0.41.0. Key highlights: -* 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 +* The libplacebo based `gpu-next` is now the default, over `gpu` +* Vulkan hardware decoding is preferred over other APIs +* New context_menu.lua script for right-click context menus +* AAudio backend for modern, HNI-free audio output on Android +* Improved default color management for gpu-next, and handling on Wayland +* Color representation protocol support for Wayland +* Tablet input support for Wayland +* Clipboard writing support for Wayland and a clipboard backend for X11 +* Ambient light support on Linux (using sysfs ALS) +* Built-in helpers to register mpv as a media app on Windows This release requires FFmpeg 6.1 or newer and libplacebo 6.338.2 or newer. @@ -24,110 +22,118 @@ This release requires FFmpeg 6.1 or newer and libplacebo 6.338.2 or newer. ## 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 - +- clipboard-wayland: support clipboard writing +- wayland: add support for wp-color-representation-v1 +- wayland: tablet input support +- vo_gpu_next: add support for blend-subtitles=video +- meson: add mpv-register and mpv-unregister helpers on Windows +- context_menu.lua: add this script +- select.lua: add edit-config-file and edit-input-conf +- osc.lua: add indicator for buffering/loading +- osdep/linux-als: support 'ambient-light' property on Linux +- clipboard-x11: add x11 clipboard backend +- ao/aaudio: implement native AAudio backend for Android ## Changed -- 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) +- vd_lavc: prefer Vulkan hwdec when available +- vd_lavc: prefer non-copy hwdec before falling back to -copy variant +- vo: move vo_mediacodec_embed to not be the default on Android +- sub/osd_libass: don't rerender OSD if not changed +- vo: prefer vo_gpu_next over vo_gpu by default +- vo_gpu_next: respect ICC profile color space over any metadata +- vo_gpu_next: linearize sRGB as a pure 2.2 power function +- meson: warn if building with SDL2 due to known problems +- osxbundle: make bundle category configurable and default to video +- ao_pipewire: avoid setting any media.role by default # Options and Commands ## 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 - +- sub: add control for libass caching options (glyph-limit, bitmap-max-size) +- vo: add options to control background tile appearance (transparency) +- command: add default and forced flags to the track add commands +- vo_gpu_next: add options to control subtitle peak for HDR output +- video/out/d3d11: add d3d11 composition mode support +- vd_lavc: add --hwdec-threads +- stream_bluray: add --bluray-angle +- vo_gpu_next: add options to control output colorspace metadata more precisely +- sub: make --sub-fix-timing configurable +- vo_gpu_next: add --hdr-reference-white +- audio/out: add --audio-set-media-role ## Changed -- 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 - - -## Deprecated - -- options: deprecate `--gamma-auto` (use gamma-auto.lua script instead) -- options: deprecate undocumented --cdda-span-{a,b} options +- options: revert --prefetch-playlist default back to 'no' +- vo_gpu_next: change --target-colorspace-hint to 'auto' by default +- options: handle runtime --wid change +- options: reduce swapchain-depth to 2 by default +- screenshot: add osd and scaled flags to screenshot commands # Fixes and Minor Enhancements -- 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 +- vo_kitty: add auto-multiplexer-passthrough option +- vd_lavc: enable FFv1 hwaccel by default +- clipboard-wayland: prevent reading from hung up fd +- demux_mkv: fix compilation after deprecated definitions removal +- filters: handle flipping video if displaymatrix indicates so +- player/scripting: fix race condition when destroying clients +- {osd,msg}: use PU codepoints for escape codes instead of invalid UTF-8 +- vo_dmabuf_wayland: only load needed hardware decoding drivers +- video/image_writer: tag accurate bit depth +- demux_lavf: fix unconstrained cache size with wrapped AVFrame packets +- libarchive: fix reading name of certain UTF-8 files +- sub/sd_lavc: fix decoding with libaribb24 +- ao_avfoundation: fix memory leak +- osc.lua: fix volume icon not updating while paused +- context_wayland: implement target_csp for wayland +- vo_gpu: fix target colorspace for redrawn frames +- vo_dmabuf_wayland: don't set HDR metadata on SDR transfers +- vo_gpu_next: don't do partial updates on hint luminance +- sub/ass_mp: add missing padding for ass packer +- stream_dvb: allow to enforce DVB-S/T for old zap format channels.conf +- demux_libarchive: fix reading archives with '%' in stream URL path +- vo_gpu_next: allow UINT upload if no other format is supported +- ytdl_hook.lua: fix incorrect default format used with yt-dlp +- vo_gpu_next: allow unsetting LUTs +- stream_bluray: use bd_get_main_title() to get main title +- vo_gpu_next: when tone-mapping, set better maxCLL value +- stream_libarchive: seek source stream to 0 before probing +- path-unix: support ~~desktop path expansion +- ytdl_hook.lua: don't crash if playlist entries don't have an usable URL +- mac/vulkan: fix frame not displayed when paused +- mac/common: render first frame on init if possible +- video/out/w32_common: support --wid=0 +- demux_mkv: map and expose hearing/visual impaired flags +- player/misc: show percentage progress for --stream-dump +- command: fix null dereference for invalid command in input-commands +- cplugin: fix missing init of pfn_mpv_get_time_ns +- vo_dmabuf_wayland: actually reuse OSD buffers +- mp_image: add support for AVAlphaMode +- vo_gpu_next: add --border-background=blur and --background-blur-radius +- demux/cue: fix crash when there are no tracks +- vf_format: add some basic HDR10 metadata +- vo/context_android: fix surface tearing on resize +- meson: remove redundant 'sdl2' option +- mac/common: fix window position on multi monitor setups +- vo_gpu_next: limit min_luma to 1000:1 contrast ratio in SDR mode +- ao_pipewire: fix some incorrect channel mappings +- wayland: correct geometry handling for rotated outputs +- demux: clear packet pool when upper memory limit is lowered +- mp_image: add ycgco-{re,ro} support +- wayland: convert luminance values to libplacebo space +- vo: trigger manual redraws at most at slightly over display fps +- osxbundle: add new macOS 26 compatible App icon +- wayland: support color-management-v1 version 2 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.39.0..v0.40.0` +A complete changelog can be seen by running `git log v0.40.0..v0.41.0` in the git repository or by visiting -. +.