Releases: mpv-player/mpv
v0.35.1
Bug fix release for the 0.35 branch.
Fixes and Minor Enhancements
- ao_pipewire: log version and other useful debug info
- wayland: error out if essential protocol support is missing
- 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
- ao_pipewire: properly clean up resources
- filter_kernels: fix kaiser
- hwdec/d3d11va: fix a possible memory leak
- external_files: set log level for potential files to trace
- 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
- wayland: dispatch and wait for compositor events in uninit
- demux: boost read EBU R128 gain values to ReplayGain's reference level
- version.py/version.sh: bump copyright year
- vulkan: fix build error for 32bit builds with clang
- vo_wlshm: cleanup on failure
- ra_d3d11: fix incorrect type
- meson: also search for rst2html with .py extension
- audio: fix crash during uninit with ao_lavc
- mp_image: fix XYZ primaries default
- vd_lavc: add "auto" choice for vd-lavc-dr
- vo: implement VO_DR_FLAG_HOST_CACHED
- x11: fix issue with xpresent timing feedback
v0.35.0
This release requires FFmpeg 4.0 or newer.
For packagers: Note that mpv's build system is only supported on Python 3. If you use the bootstrap.py script it will take care of this, otherwise you need to explicitly invoke the build system using python3 waf.
This release adds the Meson build system as an alternative to waf. It is supposed to be feature-complete but please report any issues you encounter.
Features
Added
- vo_gpu_next: add new libplacebo-based renderer
- build: add meson build support
- vo_gpu_next: forward Dolby Vision metadata to libplacebo
- ao_pipewire: add PipeWire audio backend
- ao_sndio: readd this audio output again
- vo_gpu_next: apply film grain if such metadata is present
- drm: context_drm_egl: add support for enabling VRR
- demux: add support for R128 replaygain tags
- x11: support X Present extension
- af_rubberband: add support for new engine in rubberband 3.0.0
- hwdec/drmprime: add drmprime hwdec-interop (commonly found on SoCs)
- various: support binding functions keys beyond F12
- audio: support hotplug events for multiple AOs
- sub: use Unicode linebreaking for non-ASS subs and OSD
- vo_gpu: hwdec: add Android hwdec utilizing AImageReader
- vo_dmabuf_wayland: add wayland VO displaying dmabuf buffers (vaapi or drm hwdec only)
- lua/console: add history deduplication
Changed
- filters: re-add vavpp hardware deinterlacing auto-filter (for --deinterlace)
- swresample: don't forcibly clip audio on every conversion
- ytdl_hook: always set HTTP headers to fix yt-dlp on certain sites
Removed
- libmpv: remove opengl_cb API and other deprecated symbols
- lua: remove deprecated mp.suspend(), resume() and resume_all()
- build: raise minimum libplacebo version requirement to v4.157.0
Options and Commands
Added
- vo_gpu_next: add --target-colorspace-hint to facilitate HDR passthrough
- vo_gpu_next: new tone mapping options 'auto', 'spline', 'bt.2446a' and add --tone-mapping-crosstalk, --inverse-tone-mapping
- vo_gpu: add --gamut-mapping-mode and --tone-mapping-mode
- options: add 'always' choice to --stop-screensaver
- options: add --osd-playing-msg-duration
- player: add --cover-art-whitelist option
- x11: add --x11-present option
Changed
- ao_openal: enable --openal-direct-channels by default
- options: only apply --sub-visibility to primary subtitles
- options: make --cover-art-auto=exact the default
- vo_gpu/hwdec: rename and introduce legacy names for some interops
Deprecated
- vo_gpu: deprecate --gamma-factor and --gamma-auto
Removed
- vo_gpu: remove --gamut-clipping, --gamut-warning, --tone-mapping-desaturate and --tone-mapping-desaturate-exponent (replacements available)
- vulkan: remove --vulkan-disable-events
Fixes and Minor Enhancements
- context_drm_egl: use gbm_surface_create_with_modifiers
- context_drm_egl: add support for BGR surface formats
- vo_gpu: vulkan: open DRM render fd when using VK_KHR_display
- client API: use symbol visibility attributes
- vo_gpu: hwdec_vaapi: add dma-buf modifiers support
- wayland: fix various issues that could lead to jitter
- osc: fix cache displaying 60s in some cases
- player: make --keep-open=always work with --loop-playlist
- opengl: support driver debug message under OpenGL ES
- vo_gpu: opengl: fixes for OpenGL ES version and extension handling
- f_decoder_wrapper: support frame rotation metadata (used by JPEG)
- wscript: switch shaderc checks to pkgconfig
- vd_lavc: enable hwdec for prores by default
- vo_gpu: add HOOKED_gather for custom shaders
- wayland, x11: sanitize window title for valid UTF-8
- win32: apply geometry position to content instead of window
- filter_kernels: add cosine window
- vo_gpu: hwdec_vaapi: don't probe formats for irrelevant endpoints
- vo_gpu: hwdec: load hwdec interops on-demand by default
- stats.lua: graphs: fix bad rendering due to division by 0
- hwdec: warn on unsupported --hwdec option value
- x11: fix --screen-name option
- x11: avoid wasteful rendering when possible
- video/image_writer: add JPEG XL support
- stream_lavf: enable ipfs, ipns and rist protocol support
- osc.lua: fix crash when calling osc-tracklist while idle
- player: add jxl, tiff, tif to list of image extensions
- various: switch to new AVChannelLayout structure
- lua: command_native_async: always run callback asynchronously (edge case)
- context_x11egl: remove supposed transparency workaround
- vo_gpu: fix 3DLUT precision
- drm: avoid drmModeAtomicCommit races by blocking
- drm_common: skip cards that don't support KMS for autodetection
- hwdec/dmabuf_interop_gl: support basic multi-plane formats
- misc/random: switch to internal xoshiro rng implementation
- ytdl_hook: improve track detection
- ad_lavc: strip non-normalized floats
- mpv.metainfo.xml: add XDG appstream metadata manifest
- mac: avoid unnecessary unsafe conversions; fixes crash in debug builds
- af_scaletempo2: fix crash when the number of channels increases
- wayland: correctly handle non-CLOCK_MONOTONIC clocks
- x11: fix --on-all-workspaces option
- sd_ass: improve handling of subtitles with unknown duration
- hwdec/vaapi: improve probing of supported sw formats
- demux_mf: enable support for QOI, PHM and HDR images
- demux_mkv: add AVS2 and AVS3 to tag list
- TOOLS/lua/autoload: fix incorrect duplicate file loading behavior
- demux/codec_tags: support more WAVEFORMATEXTENSIBLE tags
- sd_ass: never mangle colours on RGB video
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.34.0..v0.35.0
in the git repository or by visiting v0.34.0...v0.35.0
v0.34.1
Bug fix release for the 0.34 branch.
Fixes and Minor Enhancements
- player: fix autofit/geometry related segfault
- ao_oss: add missing PATH_DEV_MIXER define
- egl_helpers: fix context creation if GLES 3 is not available
- audio: stop corrupting audio on underreads
- wayland: fix a potential segfault on surface enter
- vo_gpu: opengl: fix wrong glMemoryBarrier call
- vo_gpu: opengl: create context at version 4.4 again
- af_lavcac3enc: fix memory leak on no-op
- subprocess: unblock/reset signals before running child process
- wayland: avoid doing unneccesary window resizes
v0.34.0
This release requires FFmpeg 4.0 or newer.
For packagers: Note that mpv's build system is only supported on Python 3. If you use the bootstrap.py script it will take care of this, otherwise you need to explicitly invoke the build system using python3 waf.
Features
Added
- player: allow vo to be switched at runtime
- input.conf syntax: support custom quotes in `XstringX` form & single quotes
- ao_oss: readd OSSv4 audio output, default on *BSD
- player: load cover art with the media filename
- vo_gpu: vulkan: implement a VkDisplayKHR backed context
- osc: seekbar hover/drag: display target chapter at the OSC title
- stats.lua: add page 4 with a list of active key bindings
- sub: add --sub-filter-jsre (JS regex)
- vo_rpi: restore fullscreen handling
- vo_tct: add resize capability
- ytdl_hook.lua: search for yt-dlp by default (preferred over youtube-dl)
Changed
- vo_sixel: many fixes and improvements
- filters: switch from scaletempo to scaletempo2, used for
speedoption - audio/vo_pulse: fix various edge cases and issues
- stats.lua: move internal performance info from page 4 to page 0
- command: don't hardcode command lists to be repeatable
Removed
- mac: drop build support for swift versions earlier than 4.1
- vo_gpu: drop support for libplacebo older than v3.104.0
Options and Commands
Added
- vo_sixel: add --vo-sixel-exit-clear
- player: add --screen-name and --fs-screen-name
- player/command: add albumart argument to video-add
- command: add pid (process id), display-width and display-height properties
- sub: add secondary-sub-text, -start, and -end properties; secondary-sub-visibility option
- vo_gpu: add --icc-force-contrast
- player: add append-play flag to loadlist
- command: add support for secondary subs to sub-seek and sub-step
- options: add watch-later-options to configure which options are saved
- player: add track-list/N/image sub-property
- input: add --no-input-builtin-bindings option
- drm_common: add --drm-device option
Changed
- vo_sixel: change default dither to "auto"
- vd_lavc: add VP8 to the default allowed hwdec codec list
- vo_gpu: lower default deband threshold to preserve more detail
- vo_gpu: adjust interpolation-threshold's default
- demux: undeprecate --cache-secs
- options: add
Uploader,Channel_URLto --display-tags defaults - options: --audio-display determines cover priority
- command: make current-window-scale writeable
Deprecated
- win32: ignore and deprecate --fit-border
- drm_common: deprecate selecting by card number in --drm-connector
Removed
- vo_gpu: remove --icc-contrast
- stats.lua: remove script-opts for the main keys (i/I)
- vo_gpu: opengl: remove --opengl-restrict
Fixes and Minor Enhancements
- terminal: correctly process input when foregrounded
- vo_wlshm: support presentation time
- mac: fix a window positioning bug when exiting fullscreen
- csputils: add mappings for DCI-P3 (ST.431-2) and P3-D65 (ST.432-1)
- player: make resetting of track selection to "auto" work
- stream_lavf: support rtsps
- vo_wlshm: support big endian systems
- demux_mf: add support for more image codecs
- msg: fix really-quiet option to only affect terminal output
- mac: fix traditional fullscreen on macOS 11
- ao_pulse: fix misbehavior with PipeWire when setting volume or mute
- stats.lua: include a filter's @label when displaying filters on page 1
- wayland, win32: support the display-hidpi-scale property
- win32: keep the window title-bar inside the screen
- filter_kernels: fix incorrect constant for quadric window
- command: add display-width/display-height property
- edl: add a way to add tags
- stream_file: disable readahead for remote files on macOS to fix stutter
- osxbundle: fix slow and wasteful memory allocation that caused stutter
- vo_gpu: fix extreme clipping with --gamut-clipping for HDR outputs
- af_scaletempo2: speed up using vector calculations
- recorder: fix muxing of certain codecs
- win32: support the focused property
- js: add mp.utils.append_file
- subs: fix missing subtitles on last frame
- stats.lua: show scaled resolution
- osc: expose osc-visibility via shared-script-properties
- terminal-unix: fix ^Z identification and ignore unknown CSI sequences
- context_drm_egl: allow autoprobe selection
- wayland: improve behavior with touch events
- command: make current-window-scale writeable
- vo_vdpau: don't treat preemption as an error to fix VT switching
- wayland: read XCURSOR_THEME to get cursor theme
- demux_playlist: extend maximum line size (again) to 2M
- win32: call timeBeginPeriod on demand on Windows 10
- build: allow easier selection of lua version/package
- vo_gpu: fix distortion with certain rotated videos
- drm_common: skip non-primary devices during automatic choosing
- drm_common: support USB, SPI, Writeback and unknown connector types (future proofing)
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.33.0..v0.34.0
in the git repository or by visiting either
v0.33.0...v0.34.0 or
https://git.srsfckn.biz/mpv/log/?qt=range&q=v0.33.0..v0.34.0
v0.33.1
Security fix release for the 0.33 branch. Users are advised to upgrade immediately.
Fixes and Minor Enhancements
- demux_mf: improve format string processing (assigned CVE-2021-30145)
v0.33.0
This release requires FFmpeg 4.0 or newer.
For packagers: Note that mpv's build system is only supported on Python 3. If you use the bootstrap.py script it will take care of this, otherwise you need to explicitly invoke the build system using python3 waf.
Features
Added
- scripting: load scripts from directories
- mac: activate logging when started from the bundle
- ytdl_hook.lua: delay load subtitles
- sub: add an option to filter subtitles by regex
- scripting: add a way to run subprocesses as "scripts"
- command: implement asynchronous commands and support for named arguments
- player: add optional separate video decoding thread
- vo_gpu: d3d11: add support for exclusive fullscreen
- w32_common: Support HiDPI on Windows
- vo_x11: add 10 bit support
- vo_gpu: add BT.2390 tone-mapping
- client API: add software rendering API
- audio: add scaletempo2 filter based on chromium
- auto_profiles: add this script
- stream: Implement slice:// for reading slices of streams
- player: add automatic loading of external cover art files
- vo_sixel: implement terminal video output using sixel
Changed
- sws_utils: use zimg by default if available
- build: pick up Lua 5.2 by default (preferred over 5.1)
- build: disable RPI vendor blob auto-detection in favor of open-source stack
- build: make C11 atomics mandatory
- build: make libass non-optional
- player: stricter filename matching for external subtitle auto-loading
- lua: support Unicode paths in script loading and IO library
- vo_direct3d: rip out texture video rendering path and dumb down OSD rendering
- audio: rewrite internal audio handling and AO API
- build: disable GLX by default
Removed
- stream_libarchive: disable tar support due to bugs
- Remove remains of Libav compatibility
- stream_smb: remove due to lack of thread safety and the abundance of alternatives, FFmpeg still includes SMB support
- command: remove legacy hook API (has been deprecated for a long time)
- client API: remove deprecated qthelper.hpp header
- removed audio outputs: sndio, rsound, oss
- x11: remove xdg-screensaver invocations that supported dbus based idle inhibit
- client API: deactivate the opengl_cb API
- build system: drop Python 2 compatbility
Options and Commands
Added
- demux: add option to disable cache "sharing" between back and forward buffers
- player: add ab-loop-count option/property
- ytdl_hook: add a way to use ytdl's default formats
- ytdl_hook: add all_formats option that loads all formats that were found
- demux_mkv: document probe-start-time option and enable it by default
- command: extend osd-overlay command with bounds reporting
- player: a number of new playlist contol commands/properties
- ipc: add --input-ipc-client option
- options: add option to control display-sync factor
- vo_gpu: add better gamut clipping option
- vo_gpu: vulkan: add ability to disable events
- x11: add option to make window appear on a specific workspace
- wayland: expose wayland-app-id as a user option
- player: add --subs-with-matching-audio option
- command: add read-only focused property
- screenshot: option to use software rendering for screenshots
- command: add delete-watch-later-config
- command: new property mouse-pos with current position and hover state
Changed
- options: remove deprecation warning for "-foo bar" syntax
- player: make audio hr-seek default
- ad_lavc: disable decoder downmix by default
- command: support save-position-on-quit for "stop" command too
- command: extend subprocess command
- options: do not accept ":" as separator anymore in key/value lists
Deprecated
- demux: deprecate --cache-secs
Removed
- wayland: remove wayland-frame-wait-offset option
- input: remove deprecated --input-file option
- vo_vdpau: remove deprecated/inactive --vo-vdpau-deint option
Fixes and Minor Enhancements
- options: stop hiding deprecated options from --help output
- lua, js: add mp.get_script_directory() function
- lua: fix security relevant loading order issue with scripts
- player: make screenshot each-frame mode more accurate
- bash completion: complete ao/af/vo/vf options
- zimg: add alpha support
- wayland: make resizing better
- edl: add mechanism for delay loading streams
- stream_file: fix caching-related performance regression on CIFS
- cocoa-cb: fix crashes and issues with UI updates
- sub, demux: improve behavior with negative subtitle delay/muxed subs
- demux: make seek ranges work for static images + audio
- cocoa-cb: support maximize/minimize on startup
- umpv: change from legacy FIFO to socket
- stats: move input speed to cache page, make it a graph
- stats: add fourth page with performance graphs
- command: print edition title to OSD when cycling
- zimg: add support for big endian input and output
- demux_mkv: add png intra support
- build: detect VT_GETMODE on FreeBSD and DragonFly
- win32: use windows 10 native virtual-terminal if available
- vo_gpu: enable frame caching for still frames
- command: add property to return text subtitles in ASS
- vo_gpu: ra_pl: add timers support
- build: allow vo_wlshm on more Wayland platforms (e.g. FreeBSD)
- zimg: add slice threading and use it by default
- command: add a way to access properties of a current track
- vo_gpu: EGL: fix transparency on X11/EGL/Mesa
- vd_lavc: add AV1 to the default allowed hwdec codec list
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.32.0..v0.33.0
in the git repository or by visiting either
v0.32.0...v0.33.0 or
https://git.srsfckn.biz/mpv/log/?qt=range&q=v0.32.0..v0.33.0
v0.32.0
This release requires FFmpeg 4.0 or newer.
Features
Added
- stream_libarchive: enable RAR5 support
- bash completion: add initial implementation
- cocoa-cb: add support for forcing the dedicated GPU for rendering
- cocoa-cb: add pinch to resize window gesture
- w32_common: support minimizing/maximizing using osc window controls
Changed
- wayland: print warning on GNOME due to serious issues with their compositor
- player: write watch-later config even for unseekable streams
Removed
- vo_gpu: hwdec_vdpau: remove direct_mode
- vo_gpu: hwdec_vaegl: remove support for old-style interop
Options and Commands
Added
- command: add a playlist-unshuffle command
- command: add osd-dimensions property
- input: new PLAYONLY and PAUSEONLY keycodes
Changed
- options: change option parsing when using a single dash
This adds a warning for-o file.mkvand disallows the use of
--o file.mkv(use--o=file.mkvinstead).
Fixes and Minor Enhancements
- lua: fix mp.file_info for large files
- vo_gpu: fix crash if dither texture fails to allocate
- wayland: unscrew up cursors, fix various issues
- osc: usability improvements for osc window controls
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.31.0..v0.32.0
in the git repository or by visiting either
v0.31.0...v0.32.0 or
https://git.srsfckn.biz/mpv/log/?qt=range&q=v0.31.0..v0.32.0
v0.31.0
This release requires FFmpeg 4.0 or newer.
Features
Added
- vo_gpu/d3d11: allow configurable swapchain color space for native HDR output
- player: add mechanisms for better logging as preperation for console.lua
- audio: add ao_audiotrack for Android
- input: introduce a pseudo key name that grabs all text input
- wayland: add grab zone for resizing window with mouse
- osc: implement pseudo client side decorations via OSC
- vf_gpu: add video filter using vo_gpu's renderer
- added console.lua: interactive REPL for input commands
- osc: display Santa hat for idle logo in December
- vd_lavc: add option to autoselect known good hwdec implementations
- mac: replace old event tap for media key support with MediaPlayer
Changed
- input: disable gamepad code by default
- vo_gpu: allow vdpau usage under EGL
- stream, demux: redo origin policy
Removed
- mac: remove Apple Remote support
- client API: deprecate tick event
Options and Commands
Added
- vo_gpu/d3d11: add --d3d11-output-csp for configuring swap chain color space
- command: add command-list property
- command, input: add input-bindings property
- command: add --window-maximized and make --window-minimized settable
- command: add property returning hidpi scale
- command, lua: add a way to share data between scripts
- client API, lua: add new API for setting OSD overlays
Changed
- add a builtin "sw-fast" profile, which restores performance settings
for software video conversion. These were switched to higher quality.
This affects video outputs like vo_x11 and vo_drm, and screenshots. - options: make --show-profile without parameters list all profiles
- wayland: support for --hidpi-window-scale option
- stream_lavf: set --network-timeout to 60 seconds by default
- x11: scale window-scale by DPI
Deprecated
- deprecate --input-file
- deprecate --video-sync=display-adrop
- deprecate all input section commands
- deprecate --display-fps, replaced by --override-display-fps
Removed
- remove deprecated --playlist-pos alias
Fixes and Minor Enhancements
- vo_drm, vo_x11: allow use of zimg
- vo_sdl: Support mouse wheel input, Improve mouse button input
- video: fix track switching work for external images
- vo_gpu: fix infinite scaler reinit spam
- f_output_chain: fix possible crash when changing filters
- vo_gpu: opengl: add hack for ancient Mesa/GLX
- demux_lavf: export demuxer_id for more formats which have it
- lua: make later key bindings always have higher priority
- drm_common: fix display FPS estimation for interlaced modes
- vo_drm: fix incorrect pixel format possibly being picked for 30-bit
- zsh completion: fix pcre usage to really be optional
- options: increase consistency between list options and document them
- osc: reduce unnecesary CPU usage by using property notifications
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.30.0..v0.31.0
in the git repository or by visiting either
v0.30.0...v0.31.0 or
https://git.srsfckn.biz/mpv/log/?qt=range&q=v0.30.0..v0.31.0
v0.30.0
This release requires FFmpeg 4.0 or newer.
This release has replaced the internal Vulkan rendering abstraction
with libplacebo's more up-to-date implementation.
Features
Added
- vo_gpu: vulkan: hwdec_cuda: Add support for Vulkan interop
- command: support for async commands
- input: support for named arguments
- cocoa-cb: add support for mac 10.14 Dark mode and run time switching
- vo_gpu: switch to Vulkan API implementation based on libplacebo
- context_drm_egl: Add support for presentation feedback
- vo_gpu: implement error diffusion for dithering
- vo/gpu: hwdec_vdpau: Support direct mode for 4:4:4 content
- vo_gpu: hwdec_vaapi: Add Vulkan interop
- video, TOOLS: add vf_fingerprint and a skip-logo script
- vo_gpu: d3d11: add support for presentation feedback
- vo_drm: 30bpp support
- cocoa-cb: add support for 10bit opengl rendering
- video: add pure gamma TRC curves for 2.0, 2.4 and 2.6
- vo_drm: Implement N-buffering and presentation feedback
- Reintroduce vo_wayland as vo_wlshm
- video: add zimg wrapper
- wayland: add presentation time
- input: add gamepad support through SDL2
Changed
- cocoa-cb: use libmpv's advanced rendering control and timing
- vo_gpu: improve tone mapping desaturation
- vo_gpu: redesign peak detection algorithm
- vo_gpu: allow boosting dark scenes when tone mapping
- osc: improve look of seekranges
- vo_gpu: x11: remove special vdpau probing, use EGL by default
- demux: sort filenames naturally when playing a directory / archive
- stream_dvb: rewrite channel switching, remove old stream control
- filters: extend vf_format so that it can convert color parameters
Removed
- demux, stream: rip out the classic stream cache
- vo_gpu: removed internal Vulkan implementation
- Remove libdvdread support in favor of libdvdnav
- demux, stream: remove much of the optical disc support
- Remove classic Linux analog TV support, and DVB runtime controls
- demux, stream: remove old rar support in favor of libarchive
- vo_gpu: remove mali-fbdev
- vo_gpu: remove vdpau/GLX backend
- vf_vapourynth: remove Lua backend
- vo_gpu: remove hwdec_d3d11eglrgb
Options and Commands
Added
- command: add a subprocess command
- vo_gpu: added --tone-mapping-max-boost, --hdr-peak-decay-rate, --hdr-scene-threshold-low/high
- player: add --demuxer-cache-wait option
- Implement backwards playback
- demux: add a on-disk cache
- demux, command: add another stream recording mechanism,
dump-cachecommand - ao_pulse: add --pulse-allow-suspended
- command: add video-add/video-remove/video-reload commands
- demux_cue: added --demuxer-cue-codepage to select CUE sheet charset
- input: add keybind command
- command: add sub-start & sub-end properties
- video/d3d11: added --d3d11-adapter to select a rendering adapter by name
- vo_gpu/d3d11: added --d3d11-output-format for configuring swap chain format
Changed
- vo_gpu: split --linear-scaling into --linear-upscaling and --linear-downscaling
- vo_gpu: split --tone-mapping-desaturate into strength and exponent
- drm: rename --drm-osd-plane-id to --drm-draw-plane, --drm-video-plane-id to --drm-drmprime-video-plane, --drm-osd-size to --drm-draw-surface-size
Deprecated
- options: deprecate --video-aspect, replaced by --video-aspect-override
- options: deprecate --record-file, --spirv-compiler
Removed
- options: remove deprecated --chapter option
- demux: remove "program" property
- stream: remove "disc-titles", "disc-title", "disc-title-list", and "angle" properties
- cocoa-cb: remove --macos-title-bar-style, replaced by --macos-title-bar-material and --macos-title-bar-appearance
- spirv: remove support for --spirv-compiler=nvidia (shaderc is the only remaining option)
Fixes and Minor Enhancements
- context_drm_egl: implement n-buffering
- cocoa-cb: add support for custom colored title bar
- vo_gpu: x11egl: support Mesa OML sync extension
- demux, demux_edl: add extension for tracks sourced from separate streams
- context_drm_egl: Use eglGetPlatformDisplayEXT if available
- vo_gpu: vulkan: add Android context
- wayland: use xdg-decoration if available
- vo_gpu: glx: use GLX_OML_sync_control for better vsync reporting
- demux: runtime option changing for cache and stream recording
- x11: fix ICC profiling for multiple monitors
- zsh completion: move generation to runtime and improve
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.29.1..v0.30.0
in the git repository or by visiting either
v0.29.1...v0.30.0 or
https://git.srsfckn.biz/mpv/log/?qt=range&q=v0.29.1..v0.30.0
v0.29.1
A bug fix release for the 0.29 release branch.
Fixes and Minor Enhancements
- af_rubberband: Fix for A-V drift on seeking.
- ao_alsa: Fixes to remove spam during pausing and end-of-file.
- ao_jack: Fix for mpv attempting to connect to non-standard devices such as MIDI.
- ao_openal: Drop support for Apple's bundled OpenAL due to lack of features to successfully build.
- ao_pulse: Fix for audio buffer length calculation.
- demux_lavf: Fix EDL playback of certain DASH streams.
- demux_lavf: Mark v4l streams as not seekable.
- demux_raw: Fix for gapless playback from raw audio input.
- drm_atomic: Fix to enable video output with devices without a video overlay plane.
- encode: Fix for crashes in case of failure to write to output.
- encode: Fix for encoding when utilizing lavfi-complex.
- Fix to strip HDR peak metadata if attached to SDR video (#6111)
- macOS: Capability to fall back on SW rendering for testing purposes.
- macOS: Fix for issues with the main menu.
- macOS: Fix for side by side split view.
- macOS: Fixes for crashes, most notably those happening on 10.14 (#5908, #6097, #6041, #6062).
- macOS: No longer let older, unsupported versions of the Swift build tools through configure.
- manpage: Misc fixups.
- stream_{smb,file}: Fix for partial writes to buffers.
- stream_libarchive: Fix hang when an out-of-bound seek happens.
- stream_smb: Fix for crashes due to libsmbclient and threading (#5936).
- vo_gpu: Fix for corruption when multiple compute shaders override each others' block sizes (#6083).
- ytdl_hook: Always load "ytdl://" URLs with ytdl_hook first.
- ytdl_hook: Fix audio streams not being picked up for some sites.
Options and Commands
Added
--cocoa-cb-sw-rendererto control whether or not to fall back on software rendering on macOS.