mpv v0.30.0 Release Notes

Release Date: 2019-10-25 // over 4 years ago
  • 🚀 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-cache command
    • 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