Download Latest Version mpv-v0.41.0-i686-w64-mingw32.zip (35.2 MB)
Email in envelope

Get an email when there's a new version of mpv

Home / v0.37.0
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2023-11-21 9.1 kB
v0.37.0 source code.tar.gz 2023-11-21 3.4 MB
v0.37.0 source code.zip 2023-11-21 3.9 MB
Totals: 3 Items   7.3 MB 1

This release requires FFmpeg 4.4 or newer and libplacebo 6.338.0 or newer.

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

New

  • 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

  • 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

  • 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

Added

  • 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

  • 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

  • command: deprecate shared-script-properties
  • demux_cue: deprecate --demuxer-cue-codepage for --metadata-codepage

Removed

  • 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

  • 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.36.0..v0.37.0 in the git repository or by visiting https://github.com/mpv-player/mpv/compare/v0.36.0...v0.37.0.

Source: README.md, updated 2023-11-21