Skip to content

Commit 02254b9

Browse files
committed
Release 0.38.0
1 parent 7a8a92b commit 02254b9

11 files changed

+131
-176
lines changed

DOCS/client-api-changes.rst

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,11 @@ API changes
3232

3333
::
3434
--- mpv 0.38.0 ---
35-
2.3 - partially revert the changes from API version 1.27, remove libmpv as the default VO and
36-
move it to the bottom of the auto-probing order. this restores the behaviour prior API
37-
version 1.27 on all platforms other than macOS, but still auto selects libmpv/cocoa-cb
38-
on macOS if it was built with support for cocoa-cb.
35+
2.3 - partially revert the changes from API version 1.27, remove libmpv as
36+
the default VO and move it to the bottom of the auto-probing order.
37+
This restores the prior behavior on all platforms other than macOS,
38+
but still auto selects libmpv/cocoa-cb on macOS if it was built with
39+
support for cocoa-cb.
3940
--- mpv 0.37.0 ---
4041
2.2 - add mpv_time_ns()
4142
--- mpv 0.36.0 ---

DOCS/interface-changes.rst

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,14 @@ Interface changes
3030
::
3131

3232
--- mpv 0.38.0 ---
33+
- add `term-size` property
34+
- add the `escape-ass` command
35+
- add `>` for fixed precision floating-point property expansion
36+
- add `--input-comands` option
37+
- change `--pulse-latency-hacks` default to `yes`
38+
- add `context-menu` command
39+
- add `menu-data` property
40+
- add `--vo-tct-buffering` option
3341
- add `begin-vo-dragging` command
3442
- add `--deinterlace-field-parity` option
3543
- add `--volume-gain`, `--volume-gain-min`, and `--volume-gain-max` options

DOCS/interface-changes/add-input-commands.txt

Lines changed: 0 additions & 1 deletion
This file was deleted.

DOCS/interface-changes/add-win32-context-menu.txt

Lines changed: 0 additions & 2 deletions
This file was deleted.

DOCS/interface-changes/escape-ass.txt

Lines changed: 0 additions & 1 deletion
This file was deleted.

DOCS/interface-changes/floating-point_property_expansion.txt

Lines changed: 0 additions & 1 deletion
This file was deleted.

DOCS/interface-changes/pa-defaults.txt

Lines changed: 0 additions & 1 deletion
This file was deleted.

DOCS/interface-changes/term-size.txt

Lines changed: 0 additions & 1 deletion
This file was deleted.

DOCS/interface-changes/vo-tct-buffering.txt

Lines changed: 0 additions & 1 deletion
This file was deleted.

RELEASE_NOTES

Lines changed: 117 additions & 163 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1-
Release 0.37.0
1+
Release 0.38.0
22
==============
33

4-
This release requires FFmpeg 4.4 or newer and libplacebo 6.338.0 or newer.
4+
This release requires FFmpeg 4.4 or newer and libplacebo 6.338.2 or newer.
55

6-
This is the first release to unconditionally require libplacebo, but note that
7-
the new improved renderer (vo_gpu_next) is not yet the default.
6+
The new improved renderer (vo_gpu_next) is being worked on and not the default yet.
87

98

109
Features
@@ -13,31 +12,30 @@ Features
1312
New
1413
~~~
1514

16-
- ao_oss: add SPDIF passthrough support
17-
- hwtransfer: implement support for HW->HW format conversions
18-
- stream/dvbin: add support for delivery system ISDB-T
19-
- audio/chmap: support up to 64 channels (including 22.2 layout)
20-
- libmpv: add mpv_time_ns()
21-
- vo_gpu, vo_gpu_next: add Vulkan support for macOS
22-
- meson: make libplacebo a required dependency
23-
- hwdec: support videotoolbox hwdec with libplacebo
15+
- scripting: add mp.input()
16+
- player: add an option to automatically turn on deinterlacing
17+
- mac: add more Now Playing information and functionality
18+
- osxbundle: automatically include MoltenVK to enable Vulkan support
19+
- input.conf: bind Ctrl+WHEEL_UP/DOWN to video-zoom
20+
- ao_avfoundation: initial support for AVFoundation audio driver (macOS)
21+
- vo: add context menu support on win32
2422

2523

2624
Changed
2725
~~~~~~~
2826

29-
- msg: print warning and error messages to stderr
30-
- options: restore old default subtitle selection behavior
31-
- input.conf: swap wheel up/down with wheel left/right
27+
- osc: allow disabling special mouse wheel behavior
28+
- mac: add support for dynamic change of geometry, autofit
29+
- x11_common: allow DPI scale in unit of 0.5 and prefer the value from Xft.dpi
30+
- vo_gpu_next: save cache to separate files
31+
- mac: large amounts of refactoring, internal improvements and cleanups
32+
- builtin.conf: remove debanding from the high-quality profile
3233

3334

3435
Removed
3536
~~~~~~~
3637

37-
- waf: remove waf as a build system
38-
- osc.lua: remove toggle for forced only subpictures (appeared as [F])
39-
- mac: remove runtime checks and compatibility for macOS older than 10.15
40-
- cocoa: remove deprecated OpenGL cocoa backend
38+
- player: remove legacy, non-standard Raspberry Pi-specific support code
4139

4240

4341
Options and Commands
@@ -46,169 +44,125 @@ Options and Commands
4644
Added
4745
~~~~~
4846

49-
- vo_gpu_next: add --hdr-peak-percentile
50-
- player: add --term-remaining-playtime option
51-
- x11: add --x11-wid-title option
52-
- vo_gpu_next: add --libplacebo-opts
53-
- player: add --subs-match-os-language option (replaces 'auto' option)
54-
- vo: add --video-crop
55-
- win32: add --window-corners, --window-affinity, --title-bar, --backdrop-type
56-
- sub: add --sub-stretch-durations option
47+
- options: add secondary-sub-delay
48+
- options: add --osd-bar-border-size
49+
- filter_sdh: add --sub-filter-sdh-enclosures option
50+
- options: add --secondary-sub-ass-override
51+
- audio: add --volume-gain option to control volume in decibels
52+
- command: export current-gpu-context property
53+
- sub: add --sub-lavc-o option
54+
- command: add load-config-file and load-input-conf
55+
- input: add --input-preprocess-wheel option
56+
- player: add loadfile/loadlist insert-next commands
57+
- input: rework window dragging to be command controllable
58+
- options: add --deinterlace-field-parity option
59+
- vo: add video-target-params property
60+
- options: add --input-commands that runs commands at startup
5761

5862

5963
Changed
6064
~~~~~~~
6165

62-
- builtin.conf: add --hdr-peak-percentile=99.995 to gpu-hq profile
63-
- player: add 'always' option to --subs-fallback-forced
64-
- demux_playlist: default to --directory-mode=lazy
65-
- builtin.conf: add --allow-delayed-peak-detect=no to gpu-hq profile
66-
- vo_gpu, vo_gpu_next: support --icc-3dlut-size=auto
67-
- demux: prepend some cache options with --demuxer-
68-
- builtin.conf: modernize internal profiles for higher quality rendering by default,
69-
rename 'gpu-hq' profile to 'high-quality', add 'fast' profile
70-
- vo_gpu, vo_gpu_next: default to dscale=hermite
71-
- builtin.conf: remove deprecated 'opengl-hq' profile
72-
- options: remove a bunch of old option fallbacks/deprecated ones
73-
- vo_gpu: allow --deband-iterations to be 0
74-
- stream_cdda: deprecate --cdda-toc-bias and always check for offsets
75-
- options: disable --allow-delayed-peak-detect by default
76-
- options: adjust default of --watch-later-options
77-
78-
79-
Deprecated
80-
~~~~~~~~~~
81-
82-
- command: deprecate shared-script-properties
83-
- demux_cue: deprecate --demuxer-cue-codepage for --metadata-codepage
66+
- player/command: add ability to scale overlay
67+
- mac: add support for window-id property and --drag-and-drop
68+
- command: support passing scale to `keypress`
69+
- mac: add support for --auto-window-resize, --input-cursor-passthrough options
70+
- win32: add support for --input-cursor-passthrough option
71+
- x11_common: support --title-bar
72+
- sub: allow setting special page numbers via --teletext_page
73+
- player: set --hidpi-window-scale to no by default
74+
- osd_libass: update the OSD bar's dent and border size
75+
- player: remove --alpha and rename --background to --background-color
76+
- options: remove --focus-on-open and add --focus-on
8477

8578

8679
Removed
8780
~~~~~~~
8881

89-
- player: remove special 'auto' option from alang/slang/vlang (previous default)
90-
- vo_gpu: remove --tone-mapping-mode
91-
- vo_gpu: remove --scale-wblur, --scale-cutoff etc.
92-
- vo_gpu: remove --scaler-lut-size
93-
- m_option: drop support for -del for list options
82+
- player: remove --term-remaining-playtime option
9483

9584

9685
Fixes and Minor Enhancements
9786
----------------------------
9887

99-
- build: remove unneeded libdl requirement for vaapi
100-
- zimg: fix abort on subsampled input with odd heights
101-
- video_writer: fix gamma for YUV screenshots
102-
- player/video: fix possible crash when changing lavfi-complex
103-
- ad_spdif: fix segfault due to early deallocation
104-
- ao_pipewire: fix race conditon with setting the media role
105-
- draw_bmp: fix overflowing coordinates in mark_rcs
106-
- ao_sndio: use sio_flush() to improve controls responsiveness
107-
- vo_vdpau: fix hwdec for this vo
108-
- vo_gpu, vo_gpu_next: fix setting an empty dscale
109-
- vd_lavc: repeatedly attempt to fallback if hwdec fails in reinit
110-
- options: fix relative time parsing on negative input
111-
- win32: signal DPI changes correctly
112-
- mp_image: properly infer color levels for some pixfmts
113-
- vo_gpu_next: add ability to use named hook params
114-
- vo_gpu_next: take into account PAR when taking screenshots
115-
- ao_audiotrack: support more channel layouts
116-
- osc.lua: support speed-independent time-remaining display
117-
- sub: fix switching tracks while paused
118-
- audio: fix clipping with gapless audio enabled
119-
- player/video: avoid spamming logs with EOF
120-
- player/command: detect aspect ratio name and show it in stats.lua
121-
- wayland: keyboard input fixes
122-
- demux_playlist: remove len restriction on headerless m3u
123-
- win32: fix display resolution calculation on mulitple monitors
124-
- vo_gpu_next: multiple adjustments and fixes to interpolation
125-
- loadfile: avoid infinite playlist loading loops
126-
- context_drm_egl: don't free EGL properties if they are null
127-
- x11: require xrandr 1.4, remove xinerama support
128-
- drm_common: skip cards that don't have connected outputs
129-
- win32_common: fixes minimized window being focused on launch
130-
- ao/jack: set device_buffer to JACK buffer size
131-
- meson: rename all features with underscores
132-
- input: add new keys: Back, Tools, ZoomIn, ZoomOut
133-
- win32: don't ignore --screen and --fs-screen
134-
- input: add missing keypad key defines and Windows multimedia keys
135-
- player: use audio pts corresponding to playing audio on EOF
136-
- command: add sub-ass-extradata property
137-
- vo_dmabuf_wayland: unmap osd surface when not needed
138-
- player: always write redirect entries for resuming playback
139-
- stats.lua: reorganize how video params are displayed
140-
- stats.lua: display HDR metadata
141-
- osc.lua: add scrolling to the seekbar
142-
- demux_lavf: prefer track durations over container durations to determine total
143-
- vo: vulkan: allow picking devices by UUID
144-
- video: allow overriding container crop if it is present
145-
- vo_gpu, vo_gpu_next, screenshot: support applying crop for screenshots
146-
- sd_lavc: account for floating point inaccuracy, fix sub PTS
147-
- stream: accept dav:// and davs:// urls
148-
- filter_kernels: refine some constants
149-
- filter_kernels: add ewa_lanczos4sharpest
150-
- osc.lua: add scrolling to audio/sub buttons
151-
- demux_mkv: support cropping and rotation
152-
- vo_dmabuf_wayland: support 90 degree rotations
153-
- filter_kernels: add hermite filter
154-
- vo: avoid unnecessary redraws when the OSD shows
155-
- scripting: support DLL cplugins
156-
- af_scaletempo2: various bug fixes
157-
- sdl_gamepad: fix button detection on modern controllers
158-
- vo_dmabuf_wayland: support osd rendering when there's no video
159-
- demux_playlist: add --directory-mode=auto
160-
- vo_gpu_next: use proper color for subtitles
161-
- win32: add an option to change window affinity and control title bar state
162-
- win32: reduce top border thickness to imitate DWM invisible borders
163-
- wayland: remove gnome-specific idle-inhibit warning
164-
- win32: pass window handle to the window-id property
165-
- osc.lua: fix calculation for slider's min-max average
166-
- recorder: fix a couple of memory leaks
167-
- af_scaletempo2: raise max playback rate to 8.0
168-
- osc.lua: move the idle logo behind other overlays
169-
- hwdec_drmprime: add nv16 support
170-
- various: change internal timing code to work in nanoseconds instead of microseconds
171-
- vo: increase display refresh rate estimation limit from 99 Hz to 400 Hz
172-
- external_files: base cover-art-whitelist on cover-art-auto-exts
173-
- path: don't override cache and state paths with --config-dir
174-
- codec_tags: map some more image mimetypes
175-
- af/vf-command: add ability to target a specific lavfi filter
176-
- win32: prevent white window flash on startup
177-
- demux_playlist: use --metacode-codepage when parsing playlist files
178-
- video: revert racey change that led to stutter and deadlocking
179-
- console.lua: various improvements
180-
- command: add playlist-next-playlist and playlist-prev-playlist
181-
- ytdl_hook.lua: set metadata with single tracks
182-
- defaults.lua: add a disabled parameter to timer constructors
183-
- terminal-unix: race condition fixes
184-
- af_scaletempo2: better defaults
185-
- hwtransfer: handle hwcontexts that don't implement frame constraints
186-
- stream_cdda: remove fallback for ancient libcdio versions
187-
- osdep: drop support for C11 without atomics
188-
- dvbin: do a big cleanup on code style and functions
189-
- ytdl_hook.lua: parse the separate cookies field
190-
- sub: update subtitles if current track is an image
191-
- javascript: use --js-memory-report option instead of MPV_LEAK_REPORT
192-
- ao_coreaudio: signal buffer underruns
193-
- ytdl_hook.lua: support thumbnails
194-
- demux: make hysteresis-secs respect cache-secs
195-
- mp_image: pass rotation correctly to/from AVFrame correctly
196-
- various: add new internal mp_thread abstraction and use it
197-
- drm: use present_sync mechanism for presentation feedback
198-
- vo_gpu: apply ICC profile and dithering only to window screenshots
199-
- audio: introduce ao_read_data_nonblocking() and use it in relevant backends
200-
- wayland: obey initial size hints set by the compositor
201-
- command: export storage aspect ratio (sar) properties
202-
- vo: delay vsync samples by at least 10 refreshes to improve convergence time
203-
- vo_sdl: fix broken mouse wheel multiplier
204-
- vo_gpu_next: simplify cache code and don't re-save when unmodified
88+
- vaapi: add support for vaapi-win32
89+
- ao/coreaudio_exclusive: fix segfault when changing formats
90+
- mac: fix libmpv usage without embedding
91+
- build: only directly link shaderc and spirv-cross on windows
92+
- build: enable dvbin by default again
93+
- playloop: use a 16:9 ratio with --force-window
94+
- mac: report modifier keys on precise scrolling
95+
- input: fix double click handling
96+
- input: add missing forward media key ('GO_FORWARD')
97+
- sub: don't busy loop if the player is paused for cache
98+
- playlist: correctly populate playlist-path with the --playlist option
99+
- win32: opt in to the windows segment heap
100+
- demux_lavf: remove fix_editlists hack for mp4
101+
- wayland: fix key modifier handling again
102+
- win32: re-enable IME
103+
- wayland_common: guard against negative configure sizes
104+
- demux_lavf: detect ico as images
105+
- bash-completion: parse the mpv options lazily
106+
- f_auto_filters: use bwdif_cuda for deinterlacing with cuda hwdec
107+
- command: do a normal seek instead of a refresh seek when switching vo
108+
- ad_spdif: fix DTS 44.1khz passthrough playback
109+
- vo_dmabuf_wayland: scale smarter in hidpi situations
110+
- hwdec_drmprime: add P010 and P210 support
111+
- wayland: look for "default" cursor as well as "left_ptr"
112+
- wayland_common: properly handle high resolution scrolling
113+
- vo_vdpau: fix timing for nanoseconds
114+
- demux_mkv: add tags for A_MPEG/L1 (mp1) audio and FFV1 video
115+
- osdep: fix infinite loop when cancelling subprocess
116+
- dec_sub: expand sub packet caching
117+
- player/sub: avoid wasteful subtitle redraws
118+
- ao_pipewire: add support for SPDIF formats
119+
- wayland_common: implement multi-seat support
120+
- vo: make libmpv last in the auto-probing order for cocoa-cb only
121+
- player/loadfile: rewrite sub autoselection logic
122+
- meson: add custom target for macOS App bundling
123+
- image_writer: cleanup leftover files if image writing fails
124+
- sub: fix LRC lines with multiple timestamps
125+
- ao: don't clip floating point formats at non-unity gain
126+
- wayland: remove old sway/wlroots hack
127+
- hwdec/dmabuf_interop_gl: migrate to EXT_EGL_image_storage on desktop GL
128+
- sd_ass: don't wrongly recognize \pos as \p
129+
- ao_audiotrack: fix missing check for passthrough support
130+
- wayland_common: log if Drag-and-Drop fails
131+
- vo_gpu_next: render subtitles at video colorspace
132+
- swresample: stop using deprecated {in,out}_channel_layout options
133+
- path: don't load any files if --no-config is passed (incl. cache and state)
134+
- vo_gpu/vo_gpu_next: fix transparency with GLX
135+
- wayland_common: require WAYLAND_DISPLAY to be set for initialization
136+
- vo_drm: add support for BGR formats and YUYV
137+
- stream: enable caching for sockets, pipes and FIFOs
138+
- ao_coreaudio: stop audio unit after idle timeout
139+
- vo_gpu_next: add support for --dither-depth=auto
140+
- vo_gpu_next: don't render ASS subtitles at HDR colorspace
141+
- video/image_writer: attach MDVC metadata and CLLI metadata
142+
- win32: resolve dropped shell links (Windows shortcuts)
143+
- af_lavcac3enc: fix memory leak on 2ch audio
144+
- win32: increase hires timer resolution
145+
- input: raise maximum key down limit to 16
146+
- input: remove max active section limit
147+
- video/egl_helpers: fix fallback logic for EGL_KHR_create_context
148+
- ao_pulse: reenable latency hacks by default
149+
- hwdec/vulkan: enable the stable AV1 extension
150+
- af_scaletempo2: fix false reporting of frame availability
151+
- win32: fix native key repeat support
152+
- ao_pipewire: fix some buffer size / timing calculations
153+
- audio: pause handling improvements for pull-based AOs
154+
- ad_spdif: specify missing media type and sample rate
155+
- mac/vulkan: add support for frame timing via presentation feedback
156+
- demux_mkv: corrected direction of ProjectionPoseRoll rotation
157+
- demux_mkv: add support for BCP 47 language tags
158+
- player: avoid busy looping during subtitle track switches
205159

206160

207161
This listing is not complete. Check DOCS/client-api-changes.rst for a history
208162
of changes to the client API, and DOCS/interface-changes.rst for a history
209163
of changes to other user-visible interfaces.
210164

211-
A complete changelog can be seen by running `git log v0.36.0..v0.37.0`
165+
A complete changelog can be seen by running `git log v0.37.0..v0.38.0`
212166
in the git repository or by visiting either
213-
https://github.com/mpv-player/mpv/compare/v0.36.0...v0.37.0 or
214-
https://git.srsfckn.biz/mpv/log/?qt=range&q=v0.36.0..v0.37.0
167+
https://github.com/mpv-player/mpv/compare/v0.37.0...v0.38.0 or
168+
https://git.srsfckn.biz/mpv/log/?qt=range&q=v0.37.0..v0.38.0

0 commit comments

Comments
 (0)