summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsfan5 <sfan5@live.de>2023-11-21 19:47:46 +0100
committersfan5 <sfan5@live.de>2023-11-21 19:47:46 +0100
commit818ce7c51a6b9179307950e919983e0909942098 (patch)
treec6d1d5264b6d40a8d7ca34129f36b7d61e188af3
parent5a12015c4bdeba42ddedf8f6986ffc92e1d38b46 (diff)
downloadmpv-release/0.37.tar.bz2
mpv-release/0.37.tar.xz
Release 0.37.0v0.37.0release/0.37
-rw-r--r--DOCS/interface-changes.rst6
-rw-r--r--RELEASE_NOTES321
-rw-r--r--VERSION2
3 files changed, 161 insertions, 168 deletions
diff --git a/DOCS/interface-changes.rst b/DOCS/interface-changes.rst
index dd692aedee..f59f89047a 100644
--- a/DOCS/interface-changes.rst
+++ b/DOCS/interface-changes.rst
@@ -50,7 +50,6 @@ Interface changes
- remove `auto-forced-only` property
- rename `--sub-forced-only` to `--sub-forced-events-only`
- remove `sub-forced-only-cur` property (`--sub-forced-events-only` is a replacement)
- - add `hdr-metadata` property
- remove deprecated `video-aspect` property
- add `--video-crop`
- add `video-params/crop-[w,h,x,y]`
@@ -113,14 +112,13 @@ Interface changes
- `--demuxer-hysteresis-secs` now respects `--cache-secs` and/or
`--demuxer-readahead-secs` as well
- add hdr metadata to `video-params` property
- - remove `hdr-metadata` property
- add `--target-gamut`
- change the way display names are retrieved on macOS, usage of options and properties
`--fs-screen-name`, `--screen-name` and `display-names` needs to be adjusted
- remove OpenGL cocoa backend that was deprecated in 0.29
- - remove `--border`, `--fullscreen`, `--ontop`, `--osd-level` and `--pause`
+ - remove `border`, `fullscreen`, `ontop`, `osd-level` and `pause`
from default `--watch-later-options`
- - add `--video-*` and `--secondary-sub-visibility` to default `--watch-later-options`
+ - add `video-*` and `secondary-sub-visibility` to default `--watch-later-options`
--- mpv 0.36.0 ---
- add `--target-contrast`
- Target luminance value is now also applied when ICC profile is used.
diff --git a/RELEASE_NOTES b/RELEASE_NOTES
index 6c4ec4d005..fe2efb703c 100644
--- a/RELEASE_NOTES
+++ b/RELEASE_NOTES
@@ -1,10 +1,10 @@
-Release 0.36.0
+Release 0.37.0
==============
-This release requires FFmpeg 4.4 or newer.
+This release requires FFmpeg 4.4 or newer and libplacebo 6.338.0 or newer.
-This is the last release to contain the waf build system.
-Meson is the primary and actively supported build system while waf is considered deprecated.
+This is the first release to unconditionally require libplacebo, but note that
+the new improved renderer (vo_gpu_next) is not yet the default.
Features
@@ -13,45 +13,31 @@ Features
New
~~~
-- player: add window-id property
-- vo_kitty: introduce modern sixel alternative
-- wayland: add wp-fractional-scale-v1 support
-- player/command: add `user-data` property (replacement for `shared-script-properties`)
-- vo_gpu_next: support mapping HDR10+ dynamic metadata
-- vo_gpu_next: allow screenshots in native colorspace
-- vo_gpu_next: parse Dolby Vision metadata for dynamic scene brightness
-- video: allow csp equalizer adjustments with floating point precision
-- command: add platform property
-- demux_mkv: support ARIB captions
-- hwdec_vulkan: add support for Vulkan-based hardware decoding
-- player: better handling of forced-only subtitles and a toggle in the OSC
-- vo_dmabuf_wayland: add osd support
+- ao_oss: add SPDIF passthrough support
+- hwtransfer: implement support for HW->HW format conversions
+- stream/dvbin: add support for delivery system ISDB-T
+- audio/chmap: support up to 64 channels (including 22.2 layout)
+- libmpv: add mpv_time_ns()
+- vo_gpu, vo_gpu_next: add Vulkan support for macOS
+- meson: make libplacebo a required dependency
+- hwdec: support videotoolbox hwdec with libplacebo
Changed
~~~~~~~
-- TOOLS/umpv: prefer $XDG_RUNTIME_DIR
-- ffmpeg: increase minimum required version to 4.4
-- player: choose speed of smallest acceptable factor for display sync
-- player: don't force saving `start` in watch-later-options
-- build: officially deprecate waf
-- vf_sub: undeprecate
-- player: set playlist title to media title if not set already
-- player: use and respect XDG_STATE_HOME and XDG_CACHE_HOME by default
-- wayland: bump required version to 1.20 and wayland-protocols to 1.25
-- ao_pipewire: require at least libpipewire 0.3.48
-- vo: hwdec: prioritise drmprime over drmprime_overlay
-- vo_gpu/vo_gpu_next: enable gpu shader and icc cache by default
+- msg: print warning and error messages to stderr
+- options: restore old default subtitle selection behavior
+- input.conf: swap wheel up/down with wheel left/right
Removed
~~~~~~~
-- drm: remove support for legacy (non-atomic) API
-- stream/dvb: drop support for DVB API before Linux 3.7
-- hwdec_cuda: drop support for PL_HANDLE_WIN32_KMT (Windows 7 only)
-- vo_dmabuf_wayland: drop linux-dmabuf-v2 support
+- waf: remove waf as a build system
+- osc.lua: remove toggle for forced only subpictures (appeared as [F])
+- mac: remove runtime checks and compatibility for macOS older than 10.15
+- cocoa: remove deprecated OpenGL cocoa backend
Options and Commands
@@ -60,160 +46,169 @@ Options and Commands
Added
~~~~~
-- player: add --force-render option
-- demux: add --demuxer-hysteresis-secs option to save power with caching
-- ao_pipewire: allow usage of global volume control via --pipewire-volume-mode
-- vo_gpu_next: add --tone-mapping-visualize
-- sub: add --sub-fonts-dir and --osd-fonts-dir options
-- player: add --auto-window-resize
-- console.lua: add a script-opt for the border size
-- player: add --drag-and-drop option
-- vo_gpu_next: add --corner-rounding option
-- player: add more precise sub fallback options --subs-fallback and --subs-fallback-forced
-- player: add --input-cursor-passthrough option
-- TOOLS/lua/autoload: allow extending ext sets from script-opts
-- demux_playlist: add --directory-mode option to control recursive directory loading
-- vo_gpu_next: add --target-contrast and --hdr-contrast-recovery/smoothness
+- vo_gpu_next: add --hdr-peak-percentile
+- player: add --term-remaining-playtime option
+- x11: add --x11-wid-title option
+- vo_gpu_next: add --libplacebo-opts
+- player: add --subs-match-os-language option (replaces 'auto' option)
+- vo: add --video-crop
+- win32: add --window-corners, --window-affinity, --title-bar, --backdrop-type
+- sub: add --sub-stretch-durations option
Changed
~~~~~~~
-- vd_lavc: add "auto" choice for --vd-lavc-dr and make it the default
- (notably this change was also backported to v0.35.1)
-- wayland: add auto choice to --wayland-configure-bounds
-- image_writer: change --screenshot-tag-colorspace default to yes
-- vo_gpu_next: expose --tone-mapping=st2094-40 and st2094-10
-- wayland: make --wayland-edge-pixels-pointer default to 16
-- options: enable scripts related opts also with cplugins
-- player/screenshot: add filename return field
-- options: set --subs-with-matching-audio to off by default
-- options: default --slang to auto, which uses the settings of the user's OS
-- vd_lavc: allow user to specify a priority list in --hwdec
-- vd_lavc: map hwdec=yes to hwdec=auto-safe and change ctrl+h to use auto-safe
+- builtin.conf: add --hdr-peak-percentile=99.995 to gpu-hq profile
+- player: add 'always' option to --subs-fallback-forced
+- demux_playlist: default to --directory-mode=lazy
+- builtin.conf: add --allow-delayed-peak-detect=no to gpu-hq profile
+- vo_gpu, vo_gpu_next: support --icc-3dlut-size=auto
+- demux: prepend some cache options with --demuxer-
+- builtin.conf: modernize internal profiles for higher quality rendering by default,
+ rename 'gpu-hq' profile to 'high-quality', add 'fast' profile
+- vo_gpu, vo_gpu_next: default to dscale=hermite
+- builtin.conf: remove deprecated 'opengl-hq' profile
+- options: remove a bunch of old option fallbacks/deprecated ones
+- vo_gpu: allow --deband-iterations to be 0
+- stream_cdda: deprecate --cdda-toc-bias and always check for offsets
+- options: disable --allow-delayed-peak-detect by default
+- options: adjust default of --watch-later-options
Deprecated
~~~~~~~~~~
-- drm: deprecate `--drm-atomic` (now always enabled)
+- command: deprecate shared-script-properties
+- demux_cue: deprecate --demuxer-cue-codepage for --metadata-codepage
Removed
~~~~~~~
-- vo_gpu_next: remove --tone-mapping-crosstalk
+- player: remove special 'auto' option from alang/slang/vlang (previous default)
+- vo_gpu: remove --tone-mapping-mode
+- vo_gpu: remove --scale-wblur, --scale-cutoff etc.
+- vo_gpu: remove --scaler-lut-size
+- m_option: drop support for -del for list options
Fixes and Minor Enhancements
----------------------------
-- ao_pipewire: log version and other useful debug info
-- wayland: error out if essential protocol support is missing
-- wayland: add support for content-type protocol
-- wayland: also log refresh rate on surface entrance
-- vo_gpu_next: fix undefined behavior on alpha-first formats
-- meson: prepend MPV_CONFDIR path with prefix
-- meson: unbreak dl check on BSDs without libdl
-- lcms: fix crash with lcms2-related options if lcms is disabled
-- meson: fix stdatomic detection on bsd
-- osc: don't spam window-controls bindings on every render
-- wayland: check for resize/move in touch event first
-- ao_coreaudio: use device's nominal sample rate for latency properties
-- hwdec_drmprime: support yuv420p format
-- ao_pipewire: properly clean up resources
-- vo/{sixel,tct}: use the alternate buffer to restore terminal
-- vo_sixel: add option to skip clear while drawing
-- filter_kernels: fix kaiser
-- hwdec/d3d11va: fix a possible memory leak
-- external_files: set log level for potential files to trace
-- external_files: recognize webp files as cover art
-- vo_opengl: do not blindly reject all Microsoft's OpenGL implementations
-- ao_coreaudio: use AudioUnitReset as ao_driver.reset to prevent long restart
-- hwdec_drmprime: fix memory leak
-- vo: hwdec: fix libdrm-related memory leak
-- draw_bmp: ensure last slice width is less than total width
-- demux: boost read EBU R128 gain values to ReplayGain's reference level
-- version.py: bump copyright year
-- TOOLS/umpv: support shell-quotes in $MPV
-- vulkan: fix build error for 32bit builds with clang
-- TOOLS/lua/autoload: improve and optimize the natural sorting
-- vo_wlshm: properly support video panscan
-- vo_dmabuf_wayland: support panscan and panning
-- ra_d3d11: fix incorrect type
-- meson: also search for rst2html with .py extension
-- audio: fix crash during uninit with ao_lavc
-- wayland: only warn about GNOME when actually missing idle inhibit support
-- mp_image: fix XYZ primaries default
-- msg: preserve early messages when log-file is set in mpv.conf
-- x11: fix issue with xpresent timing feedback
-- meson: reuse libmpv objects for cplayer to save 50% of compile steps
-- player/client: support observing sub-properties
-- m_property: implement new deletion operation on properties
-- vo_lavc: set frame rate on encoder to fix non-conforming outputs
-- player/video: don't resync audio if video is an image
-- stream: accept webdav:// and webdavs:// urls
-- video/image_writer: avoid stripping colorspace info when writing image
-- stats.lua: display HDR peak in nits
-- image_pool: fix memory leak with frames
-- options: transition from OPT_FLAG to OPT_BOOL
-- vd_lavc: sort hwdecs without hwdevices last for autoprobing
-- ytdl_hook: don't overwrite force-media-title
-- lua: use user-data for interop between osc.lua and console.lua
-- vo: fix race condition with redraw requests
-- various: more fixes to ensure correct playback of XYZ colorspace
-- ytdl_hook: fix fragment-related issue that broke YouTube DASH playback
-- command: expose hls-bitrate and program-id as track-list subproperties
-- ao_pipewire: use realtime scheduling for data thread
-- auto_profiles: check for non-existent properties
-- d3d11: retry device creation without debug, if SDK is not available
-- win32: follow Windows settings and update dark mode state
-- ytdl_hook.lua: fix clip start and end
-- hwdec_drmprime: support custom rpi4_8 and rpi4_10 formats
-- sub: fix UPDATE_SUB_HARD for converted and external subtitles
-- charset_conv: fix memory corruption in mp_iconv_to_utf8
-- options: read config file as stream
-- wayland: improve guessing when mpv is focused
-- player: always try to detect subtitle language from file name
-- vo: fix mp_frame_perf thread safety
-- lua: read_options: find script-opts prefix at index 1 exactly
-- path: handle URLs consistently in mp_basename
-- ao_wasapi: remove infinite loop hack in AOCONTROL_UPDATE_STREAM_TITLE
-- ao_wasapi: use client name instead of hardcoded string
-- vd_lavc: fix crash if hwdec devices fail to create
-- vo_drm: fix null dereference and using closed fd
-- image_writer: respect jpeg-quality when using ffmpeg for writing
-- image_writer: add support for AVIF
-- TOOLS/lua/autoload: avoid unnecessary playlist manipulation, performance
-- various: correctly ignore cache files with --no-config
-- terminal-unix: better error detection logic
-- json: raise parse depth to 50 for the sake of utils.parse_json()
-- player: delete watch_later file only after successful load
-- wayland: fix memory leak with multiple monitors
-- vd_lavc: prefer d3d11va-copy over dxva2-copy
-- vd_lavc: fix hwdec for videos with less than less than 3 frames
-- wayland: add support for suspended toplevel state
-- draw_bmp: ensure last slice is less than total width (again)
-- console.lua: sort the output from the help command
-- vd_lavc: try other hwdecs when falling back after an hwdec failure
-- sd_ass: don't reconfigure ass on every frame (performance regression)
-- sd_ass: fix converted subtitles having too-wide borders
-- loadfile: compute audio language for sub selection when using lavfi-complex
-- wayland: fix modifier keys in certain situations
-- vd_lavc: corrections towards hwdec and swdec fallback
-- zimg: fix broken sig_peak (HDR) handling
-- screenshot: implement `screenshot window` in sw for most VOs
-- osc: don't add margins to osc-deadzonesize
-- vo_vaapi: fix segfault in draw_osd
-- vo_dmabuf_wayland: correctly handle force-window
-- ao_pipewire: fix error with pipewire 0.3.75 or later
+- build: remove unneeded libdl requirement for vaapi
+- zimg: fix abort on subsampled input with odd heights
+- video_writer: fix gamma for YUV screenshots
+- player/video: fix possible crash when changing lavfi-complex
+- ad_spdif: fix segfault due to early deallocation
+- ao_pipewire: fix race conditon with setting the media role
+- draw_bmp: fix overflowing coordinates in mark_rcs
+- ao_sndio: use sio_flush() to improve controls responsiveness
+- vo_vdpau: fix hwdec for this vo
+- vo_gpu, vo_gpu_next: fix setting an empty dscale
+- vd_lavc: repeatedly attempt to fallback if hwdec fails in reinit
+- options: fix relative time parsing on negative input
+- win32: signal DPI changes correctly
+- mp_image: properly infer color levels for some pixfmts
+- vo_gpu_next: add ability to use named hook params
+- vo_gpu_next: take into account PAR when taking screenshots
+- ao_audiotrack: support more channel layouts
+- osc.lua: support speed-independent time-remaining display
+- sub: fix switching tracks while paused
+- audio: fix clipping with gapless audio enabled
+- player/video: avoid spamming logs with EOF
+- player/command: detect aspect ratio name and show it in stats.lua
+- wayland: keyboard input fixes
+- demux_playlist: remove len restriction on headerless m3u
+- win32: fix display resolution calculation on mulitple monitors
+- vo_gpu_next: multiple adjustments and fixes to interpolation
+- loadfile: avoid infinite playlist loading loops
+- context_drm_egl: don't free EGL properties if they are null
+- x11: require xrandr 1.4, remove xinerama support
+- drm_common: skip cards that don't have connected outputs
+- win32_common: fixes minimized window being focused on launch
+- ao/jack: set device_buffer to JACK buffer size
+- meson: rename all features with underscores
+- input: add new keys: Back, Tools, ZoomIn, ZoomOut
+- win32: don't ignore --screen and --fs-screen
+- input: add missing keypad key defines and Windows multimedia keys
+- player: use audio pts corresponding to playing audio on EOF
+- command: add sub-ass-extradata property
+- vo_dmabuf_wayland: unmap osd surface when not needed
+- player: always write redirect entries for resuming playback
+- stats.lua: reorganize how video params are displayed
+- stats.lua: display HDR metadata
+- osc.lua: add scrolling to the seekbar
+- demux_lavf: prefer track durations over container durations to determine total
+- vo: vulkan: allow picking devices by UUID
+- video: allow overriding container crop if it is present
+- vo_gpu, vo_gpu_next, screenshot: support applying crop for screenshots
+- sd_lavc: account for floating point inaccuracy, fix sub PTS
+- stream: accept dav:// and davs:// urls
+- filter_kernels: refine some constants
+- filter_kernels: add ewa_lanczos4sharpest
+- osc.lua: add scrolling to audio/sub buttons
+- demux_mkv: support cropping and rotation
+- vo_dmabuf_wayland: support 90 degree rotations
+- filter_kernels: add hermite filter
+- vo: avoid unnecessary redraws when the OSD shows
+- scripting: support DLL cplugins
+- af_scaletempo2: various bug fixes
+- sdl_gamepad: fix button detection on modern controllers
+- vo_dmabuf_wayland: support osd rendering when there's no video
+- demux_playlist: add --directory-mode=auto
+- vo_gpu_next: use proper color for subtitles
+- win32: add an option to change window affinity and control title bar state
+- win32: reduce top border thickness to imitate DWM invisible borders
+- wayland: remove gnome-specific idle-inhibit warning
+- win32: pass window handle to the window-id property
+- osc.lua: fix calculation for slider's min-max average
+- recorder: fix a couple of memory leaks
+- af_scaletempo2: raise max playback rate to 8.0
+- osc.lua: move the idle logo behind other overlays
+- hwdec_drmprime: add nv16 support
+- various: change internal timing code to work in nanoseconds instead of microseconds
+- vo: increase display refresh rate estimation limit from 99 Hz to 400 Hz
+- external_files: base cover-art-whitelist on cover-art-auto-exts
+- path: don't override cache and state paths with --config-dir
+- codec_tags: map some more image mimetypes
+- af/vf-command: add ability to target a specific lavfi filter
+- win32: prevent white window flash on startup
+- demux_playlist: use --metacode-codepage when parsing playlist files
+- video: revert racey change that led to stutter and deadlocking
+- console.lua: various improvements
+- command: add playlist-next-playlist and playlist-prev-playlist
+- ytdl_hook.lua: set metadata with single tracks
+- defaults.lua: add a disabled parameter to timer constructors
+- terminal-unix: race condition fixes
+- af_scaletempo2: better defaults
+- hwtransfer: handle hwcontexts that don't implement frame constraints
+- stream_cdda: remove fallback for ancient libcdio versions
+- osdep: drop support for C11 without atomics
+- dvbin: do a big cleanup on code style and functions
+- ytdl_hook.lua: parse the separate cookies field
+- sub: update subtitles if current track is an image
+- javascript: use --js-memory-report option instead of MPV_LEAK_REPORT
+- ao_coreaudio: signal buffer underruns
+- ytdl_hook.lua: support thumbnails
+- demux: make hysteresis-secs respect cache-secs
+- mp_image: pass rotation correctly to/from AVFrame correctly
+- various: add new internal mp_thread abstraction and use it
+- drm: use present_sync mechanism for presentation feedback
+- vo_gpu: apply ICC profile and dithering only to window screenshots
+- audio: introduce ao_read_data_nonblocking() and use it in relevant backends
+- wayland: obey initial size hints set by the compositor
+- command: export storage aspect ratio (sar) properties
+- vo: delay vsync samples by at least 10 refreshes to improve convergence time
+- vo_sdl: fix broken mouse wheel multiplier
+- vo_gpu_next: simplify cache code and don't re-save when unmodified
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.35.0..v0.36.0`
+A complete changelog can be seen by running `git log v0.36.0..v0.37.0`
in the git repository or by visiting either
-https://github.com/mpv-player/mpv/compare/v0.35.0...v0.36.0 or
-https://git.srsfckn.biz/mpv/log/?qt=range&q=v0.35.0..v0.36.0
+https://github.com/mpv-player/mpv/compare/v0.36.0...v0.37.0 or
+https://git.srsfckn.biz/mpv/log/?qt=range&q=v0.36.0..v0.37.0
diff --git a/VERSION b/VERSION
index 109a6b660a..0f1a7dfc7c 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-0.36.0-UNKNOWN
+0.37.0