Skip to content

Releases: mpv-player/mpv

v0.18.0

25 Jun 01:45
Compare
Choose a tag to compare

Release 0.18.0

Build System Changes

  • build: Do not link to libGL for egl-drm
  • build: also use the iconv check on FreeBSD
  • build: don't install tests, only build them
  • build: re-enable encoding mode by default
  • vo_opengl: hwdec: remove build-dependency on dxva2 (#3150)
  • wscript: make at least 1 OpenGL output mandatory

Features

New

  • csputils: add SMPTE ST2084 support
  • demux_mkv: support Matroska webvtt (#3247)
  • demux_playlist: read directories recursively
  • stream_memory: add hex:// protocol
  • vf_crop: support opaque hardware decoding formats
  • vf_d3d11vpp: add a D3D11 video processor filter
  • vo_opengl: D3D11VA + ANGLE interop
  • vo_opengl: add an angle-es2 backend
  • vo_opengl: angle: dynamically load ANGLE
  • vo_opengl: d3d11egl: native NV12 sampling support
  • vo_opengl: enable color management on GLES
  • vo_opengl: implement HDR (SMPTE ST2084)
  • vo_opengl: implement tone mapping algorithms
  • vo_opengl: make PBOs work on GLES 3.x
  • vo_opengl: support external user hooks, enhancing the flexibility of user shaders
  • vo_opengl: vdpau interop without RGB conversion
  • wayland: implement HIDPI support

Removed

  • vo_opengl: remove nnedi3 prescaler (replaced by user shaders)
  • vo_opengl: remove prescaling framework with superxbr prescaler (replaced by user shaders)

Options and Commands

Added

  • Windows: make taskbar progress indication optional (#2535)
  • af_lavcac3enc: make encoder configurable
  • command: add playlist-pos-1 property (#2828)
  • command: introduce hwdec-current and hwdec-interop properties.
  • options: add --fit-border video option (currently Windows only)
  • video: add --hwdec=auto-copy mode
  • vo_opengl: always autoselect ANGLE as backend if available
  • vo_opengl: expose performance timers as properties
  • x11: add --x11-bypass-compositor=never
  • x11: extend --x11-bypass-compositor with fs-only option (#2582)

Changed

  • command: allow setting panscan etc. properties if no video is active
  • command: don't seek immediately when setting a-b loop while paused
  • command: if only ab-loop-b is set, loop from start of file
  • options: --geometry: center window position after applying size (#2397)
  • player: loop on end of file if ab-loop-b is unset
  • sd_add: replace --sub-ass=no with --ass-style-override=strip

Removed

  • vo_opengl: remove non-working rgb/rgba FBO formats

Fixes and Minor Enhancements

  • TOOLS/zsh.pl: add .f4v extension in zsh completions
  • TOOLS/zsh.pl: complete --audio-device
  • Windows: center window on original window center on resize to fit screen
  • Windows: fix size calculations for window resize (#2935)
  • Windows: fix wrong behavior with window-scale when window size exceeds screen size
  • Windows: make VOCTRL_SET_UNFS_WINDOW_SIZE resize the window around its center (#3164)
  • af_lavcac3enc: fix custom bitrates
  • ao_alsa: add more workarounds for hardware with broken drivers (e.g. ODROID-C2)
  • ao_opensles: remove 32-bit audio formats (not supported by Android)
  • cocoa: fix actual display refresh rate retrieval
  • cocoa: use displaylink without manually tracking the display id (#2392)
  • command: improve playlist* properties change notifications (#3267)
  • command: slightly nicer OSD list formatting
  • compatibility with recent FFmpeg APIs
  • d3d: fix hardware decoding of most MPEG2 things
  • d3dva: move Intel_H264_NoFGT_ClearVideo to lower priority (#3059)
  • demux_mkv: better resync behavior for broken google-created webms
  • demux_mkv: fix seeking with files that miss the first index entry
  • demux_playlist: recognize m3u8 as playlist extension (#3154)
  • input: fix parsing multiple input command prefixes
  • lcms: don't warn/error on 3dlut cache misses
  • lcms: improve black point handling (especially BT.1886)
  • macOS: handle multiple dropped files on the window (#3076)
  • player: always show the first frame in DS mode
  • player: assume video forwards timestamps jumps only with some formats (#3027)
  • player: do not update OSD all the time when paused
  • player: eagerly redraw OSD when seeking with coverart
  • player: fix use-after-free with --screenshot-directory (#3049)
  • player: force VO reconfig when unselecting video track
  • player: really start audio only once video is ready
  • sd_lavc: work around bug in older FFmpeg releases (#3109)
  • stream_cdda: enable cache by default
  • sub: fix --sub-gauss
  • vd_lavc: better hwdec wrapper decoder selection
  • vo_opengl: EGL: fix hwdec probing
  • vo_opengl: angle: avoid fullscreen FBO copy for flipping
  • vo_opengl: angle: enable DirectComposition (lowers vsync jitter)
  • vo_opengl: angle: prevent DXGI hooking Alt+Enter
  • vo_opengl: avoid outputting ultra-wide-gamut by default
  • vo_opengl: correctly disable interpolation if tscale can't be used
  • vo_opengl: fix bicubic_fast in ES mode
  • vo_opengl: fix d3d11 hardware decoding probing on Windows 7
  • vo_opengl: improve scale=oversample performance
  • vo_opengl: make the screen blue on shader errors
  • vo_opengl: partially fix 0bgr format support
  • vo_opengl: possibly update icc profile after changing options
  • vo_opengl: request core profile on X11/EGL too
  • vo_opengl: require at least ES 3.0 for float textures
  • vo_opengl: vdpau: fix certain cases of preemption recovery failures
  • vo_rpi: attempt to survive display mode changes
  • vo_rpi: fix destroying overlays (#3100)
  • vo_rpi: wait for vsync with a timeout
  • vo_sdl: fix pixel formats.
  • vo_xv: Handle incorrect size returned by Xv(Shm)CreateImage (#320)
  • wayland: correctly report display refresh rate
  • wayland: use the advertised size in fullscreen (#3021, #2657)
  • x11: tell GNOME to use dark window decorations
  • ytdl_hook: fix brightcove urls
  • ytdl_hook: just check if protocol is rtmp (#3090)
  • ytdl_hook: support multi-arc subtitles

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.17.0..v0.18.0
in the git repository or by visiting either
v0.17.0...v0.18.0 or
https://git.srsfckn.biz/mpv/log/?qt=range&q=v0.17.0..v0.18.0

v0.17.0

11 Apr 17:15
Compare
Choose a tag to compare

Release 0.17.0

Note: The client API examples have moved to https:/mpv-player/mpv-examples

Build System Changes

  • install symbolic SVG icon
  • build: allow plain-gl build on OSX (#2980)
  • build: disable encoding mode by default (uses deprecated FFmpeg APIs)

Features

New

  • csputils: add DCI-P3 colorspace
  • d3d11va hwdec
  • demux: add null demuxer
  • ipc: add Windows implementation with named pipes
  • mediacodec decoder hwdec wrapper
  • vo_opengl: add dxva2 interop to angle backend
  • vo_opengl: generate 3DLUT against source and use full BT.1886 (#2815)

Options and Commands

Added

  • command: add cache-speed property
  • command: add keepaspect property
  • command: add video-stereo-mode property (#2994)
  • command: export canonical ffmpeg version identifier (ffmpeg-version)
  • command: export lists of all codecs (decoder-list and encoder-list)
  • osd: add italic font for osd (#3031)

Changed

  • aspect: make video-zoom logarithmic (#3004)
  • command: export more information under track-list
  • ipc: rename --input-unix-socket to --input-ipc-server
  • vo_opengl: decrease default superxbr-edge-strength
  • vo_opengl: rename prescale to prescale-luma

Fixes and Minor Enhancements

  • TOOLS/zsh.pl: don't complete URLs by default unless no files match (#2892)
  • ad_lavc, vd_lavc: support new Libav decoding API
  • cache: disable useless "Cache is not responding" warning (#3019)
  • demux: delay bitrate calculation on packets with unknown timestamps (#2903)
  • demux_timeline: set correct seekable flags (#2898)
  • input: accept plain text for drag and drop (#2945)
  • input: do not force double-click emulation for artificial commands (#2899)
  • lavc_conv: fix Libav srt subtitles (#2888)
  • player: add missing audio reconfig events (#2929, #2920)
  • player: add wv to list of external audio file extensions
  • player: fix --stream-dump exit code (#2848)
  • player: fix breakage when combining 3D and rotate auto-filters
  • playlist: improve shuffle algorithm (better uniformity)
  • sub: interpret "text" subtitles as srt
  • vo_opengl, osd: allow osc.lua to react faster on resizes
  • vo_opengl: GLX: try to create 3.3 core profile context (#2938)
  • vo_opengl: draw transparency checkerboard after upscaling
  • vo_opengl: fix operation without GL_ARB_texture_rg
  • vo_opengl: improve superxbr algorithm
  • vo_opengl: only open one OpenGL/DX interop handle when using dxva2 (fixes interop with AMD drivers)
  • wayland: don't set fs mode on every configure (#2817)
  • x11: do not set _NET_WM_BYPASS_COMPOSITOR by default (#2997)
  • ytdl_hook: handle optional format_note

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.16.0..v0.17.0
in the git repository or by visiting either
v0.16.0...v0.17.0 or
http://git.srsfckn.biz/mpv/log/?qt=range&q=v0.16.0..v0.17.0

v0.16.0

29 Feb 05:46
Compare
Choose a tag to compare

This release changes the license of some non-MPlayer source files to LGPL 2.1 or later.

Build System Changes

  • build: enable vaapi under drm-only as well (issue #2808)
  • build: enable vo_opengl_cb if GL headers are present
  • build: make libavfilter mandatory
  • build: make posix_spawn optional
  • wscript: don’t install the encoding profiles with encoding disabled

Features

New

  • Initial Android support
  • ao: initial OpenSL ES support
  • dxva2: support HEVC Main 10
  • osc: add always-on mode and unify visibility mode (always/never/auto)
  • player: add complex filter graph support
  • rpi: add mpeg-4, vc-1 decoding support
  • stream_dvb: support frontends with multiple delivery systems (e.g. DVB-C/DVB-T combo cards)
  • vo_opengl: 10 bit support with ANGLE
  • vo_opengl: add KMS/DRM VAAPI hardware decoding interop
  • vo_opengl: dxinterop: add dxva2 passthrough
  • vo_rpi: add geometry handling (--geometry, --autofit, fullscreen switching, etc.)
  • vo_x11: add 16bpp support

Options and Commands

Added

  • --lavfi-complex option for complex filter graphs
  • audio: change downmix behavior, add --audio-normalize-downmix
  • command: add vf-command and af-command commands
  • player: add --external-file option
  • vo_opengl: add interpolation-threshold sub-option

Changed

  • audio: change --audio-channels default back to stereo
  • audio: remove default preference for libdcadec (decoder was merged with FFmpeg)
  • command: always allow setting volume/mute properties
  • command: show original aspect in video-aspect property too
  • input: ignore --input-cursor for events injected by input commands (issue #2750)
  • options: set fs=yes by default on RPI, and change RPI defaults handling
  • sub: implement "sub-seek 0" (issue #2791)
  • vo_opengl: default scaler-resizes-only sub-option to yes

Fixes and Minor Enhancements

  • OS X/cocoa: fix charcode retrieving for accented characters
  • TOOLS/lua/ao-null-reload.lua: send ao-reload on audio-device-list change (issue #2738)
  • TOOLS/lua/autoload.lua: remove the extension prior to sort
  • Windows: fix dropping URIs (issue #2782)
  • af_lavrresample: prevent channels from being dropped, e.g. when going 7.1 -> 7.1(wide) and similar cases
  • ao_coreaudio: fix 7.1(rear) channel mapping
  • ao_openal: wipe out global context on init error (PR #2719)
  • ao_wasapi: avoid under-run cascade in exclusive mode
  • ao_wasapi: set buffer size to device period in exclusive mode
  • audio: fix spdif PCM fallback
  • build: add special openbsd case for iconv check (issue #2710)
  • command: fix NULL pointer deref in "video-codec" property (issue #2729)
  • command: fix track cycling logic (issue #2784)
  • demux: disable stream cache if no tracks are selected (issue #2692)
  • demux_mkv: add hack to fix opus gapless behavior
  • demux_mkv: support channel layout in VfW muxed PCM (issue #2820)
  • osc: fix runtime enable_osc(true/false)
  • player: fix initial audio sync in certain cases (issue #2770)
  • player: honor --force-window if video is selected, but inactive
  • player: never show "DS: (unavailable)"
  • player: restore old/correct --force-window behavior (issue #2825)
  • player: rewrite timeline/ordered chapter support
  • vaapi: fix compilation on older FFmpeg/Libav (issue #2737)
  • vdpau: force driver to report preemption early
  • video: don't wait for last video frame in the normal case (issue #2745)
  • video: fix coverart switching
  • video: slightly improve video stream switching
  • vo_opengl: add precision qualifier to usampler2D on ANGLE (issue #2761)
  • vo_opengl: default to rgba16f FBOs on ANGLE
  • vo_opengl: don't use normalized coords for debanding rectangle textures (issue #2831)
  • vo_opengl: dxinterop: fix compatibility issue with Vista
  • vo_opengl: pass the correct target to deband functions with Apple hwdec interop
  • vo_opengl: rename custom shader entrypoint from sample to sample_pixel (issue #2733)
  • x11: get current XRandR screen configuration instead of polling for new screens, too

This listing is not complete. Check DOCS/client-api-changes.rst for a history
of changes to the client API. A complete changelog can be seen by running
git log v0.15.0..v0.16.0 in the git repository or by visiting either
v0.15.0...v0.16.0 or
http://git.srsfckn.biz/mpv/log/?qt=range&q=v0.15.0..v0.16.0

v0.15.0

18 Jan 06:31
Compare
Choose a tag to compare

Build System Changes

  • OS X bundle: remove git sha from the Info.plist version (issue #2677)
  • add "lua51" ("51obsd") to list of possible lua names
  • add option to customize config files system path (issue #2704)

Features

New

  • vo_opengl: implement support for transparent video display on OS X (alpha=yes suboption)
  • vo_opengl: use a checkerboard pattern as background for transparent video by default

Options and Commands

Added

  • add --audio-file-paths (issue #2632)
  • player, stream_dvb: implement dvb-channel-name property, add switch binding

Changed

  • vf_stereo3d: add alternating modes
  • vo_opengl: disable pbo by default for opengl-hq due to driver problems
  • vf_yadif: change defaults (issue #2539)
  • command: change heuristic for files with 1 chapter (issue #2550)
  • demux_mkv: adjust subtitle preroll defaults
  • exclude 360 from --video-rotate range (issue #2647)
  • osd: make osd-width/height properties watchable

Fixes and Minor Enhancements

  • ao_pulse: check for sample rate bounds, attempt fallback (issue #2654)
  • ao_wasapi: remove volume "restore" on exit
  • demux_cue: better error resilience
  • mixer: fix volume initialization with --af=volume
  • mpv.desktop: add audio/mp4 mime type
  • player: detect audio PTS jumps, make video PTS heuristic less aggressive
  • player: make watch later/resume work when "playing" directories
  • player: reset playback abort when reloading a file (issue #2568)
  • recognize frame sequenced 3D Matroska video
  • stream_dvb: fix channel switching
  • vaapi: add VP9 profile (requires VA-API 0.38.1 or newer)
  • vo_opengl: dxinterop: prevent crash after lost device
  • vo_opengl: enable brightness/contrast controls for RGB
  • vo_opengl: fix operation on GLES 2.0
  • vo_opengl: fix operation on GLSL versions earlier than 1.30
  • vo_opengl: flip screenshot image if backend uses flipped rendering (issue #2635)
  • vo_opengl: reset nnedi3 weights properly (issue #2661)
  • vo_rpi: handle rotation
  • vo_rpi: work around firmware oddness leading to incorrect video rect
  • windows: fix fd://
  • ytdl: Include Referer header as well
  • TOOLS/zsh.pl: add .opus extension in zsh completions

This listing is not complete. Check DOCS/client-api-changes.rst for a history
of changes to the client API. A complete changelog can be seen by running
git log v0.14.0..v0.15.0 in the git repository or by visiting either
v0.14.0...v0.15.0 or
http://git.srsfckn.biz/mpv/log/?qt=range&q=v0.14.0..v0.15.0

v0.14.0

11 Dec 18:40
Compare
Choose a tag to compare

Build System Changes

  • build: install scalable svg icon as well
  • vo_opengl: require --enable-gpl3 for nnedi
  • win32: enable internal pthreads wrapper by default

Features

New

  • vo_opengl: add experimental dxinterop backend (renders with OpenGL, displays through Direct3D; broken with Intel drivers)
  • vo_opengl: add initial ANGLE support
  • windows: implement icc-profile-auto
  • windows: support taskbar button progress indicator (issue #2399)

Removed

  • Windows XP support
  • demux: remove old subtitle parser (FFmpeg users are unaffected; Libav loses support for some minor formats)
  • demux_libass: remove this demuxer (libavformat takes its place)
  • stream: drop old Linux PVR support

Options and Commands

Added

  • command, vo: add estimated-display-fps property
  • command: add vsync-ratio property
  • command: export some per-video-frame information (issue #2444)
  • vo_opengl: make LOOKUP_TEXTURE_SIZE configurable
  • windows: add option to set VO MMCSS profile

Changed

  • --sub-fix-timing now applies to ASS subtitles as well
  • command: rename vo-missed-frame-count property to vo-delayed-frame-count
  • input.conf: add default bindings for changing window scale (issue #2500)
  • videotoolbox: make decoder format customizable
  • vo_opengl: disable interpolation without display-sync
  • vo_opengl: make tscale=mitchell:tscale-clamp the default
  • vo_rpi: add an option to disable OSD

Fixes and Minor Enhancements

  • af_lavrresample: clamp float output to range
  • ao: disambiguate default device list entries
  • ao_alsa: filter audio device list
  • ao_alsa: list bidirectional devices too
  • ao_openal: accommodate more sample formats (issue #2494)
  • ao_openal: fix virtual speaker positioning
  • ao_wasapi: only report per-app volume in shared mode
  • ao_wasapi: work around DTS passthrough failure
  • build: make vaapi-wayland depend on gl-wayland (issue #2476)
  • demux: fix seeking in .ts
  • demux_lavf: mark ASS tracks as always UTF-8
  • demux_mkv: fix incremental indexing with single-keyframe files (issue #2498)
  • drm: fix setting up connectors
  • dxva2: reject 10 bit HEVC (issue #2516)
  • player: replace mistimed-frame-count with vsync-ratio on status line
  • sd_ass: fix secondary subtitle mode
  • various display-sync improvements
  • vo_opengl: enable NNEDI3 prescaler on OpenGL ES 3.0
  • vo_opengl: enable colormatrix even for RGB input
  • vo_opengl: fix backend autoprobing, attempt to improve GLX vs. EGL backend detection
  • vo_opengl: fix backend=x11 on Intel
  • vo_opengl: fix issues with some obscure pixel formats (e.g. rgb555)
  • vo_opengl: fix precision loss of fruit dithering matrix
  • vo_opengl: force dumb mode if RG textures are not available
  • vo_opengl: improve boundary check for polar filters
  • vo_opengl: various GLES compatibility improvements
  • vo_opengl: win32: test for exclusive mode
  • vo_opengl_cb: do not block on flipping when redrawing
  • vo_rpi: set aspect ratio
  • win32: fix console output with raw stdio functions
  • windows: try to avoid detection as exclusive fullscreen window (issue #2177)
  • x11: request bypassing compositor (issue #2502)

This listing is not complete. Check DOCS/client-api-changes.rst for a history
of changes to the client API. A complete changelog can be seen by running
git log v0.13.0..v0.14.0 in the git repository or by visiting either
v0.13.0...v0.14.0 or
http://git.srsfckn.biz/mpv/log/?qt=range&q=v0.13.0..v0.14.0

v0.13.0

10 Nov 18:21
Compare
Choose a tag to compare

NOTE: The previous release changed the default format for youtube-dl and
removed some workarounds related to MPEG DASH support. However, the required
changes to FFmpeg code (FFmpeg/FFmpeg@4ab5666)
are not in any FFmpeg release yet (as of 2015-11-10), so for now, playing DASH
streams requires using FFmpeg git master. You can work around this by using the
--ytdl-format=best option.

Features

New

  • SVG version of the icon (with symbolic counterpart)
  • stream_libarchive: add multivolume support
  • vo_opengl: add prescaling framework along with Super-xBR and NNEDI3 (currently very slow) prescalers (issue #2230)

Options and Commands

Added

  • command: add mistimed-frame-count property
  • vo_opengl: add vsync-fences option

Changed

  • command: make display-fps property writable
  • options: enable mpeg2 hw decoding by default if hw decoding is requested
  • vo_opengl: rename fancy-downscaling to correct-downscaling
  • vo_opengl: correct-downscaling: enable also for anamorphic clips
  • vo_opengl: rename "drm_egl" to "drm-egl"
  • vo_opengl: disable drm-egl autopickup
  • vo_opengl: never load vaapi GLX interop by default

Fixes and Minor Enhancements

  • ao_alsa: fix 7.1 over HDMI
  • audio: do not require full audio chain reinit for speed changes
  • rpi: add support for codecs other than h264 (mpeg2 for now)
  • vd_lavc: make hwdec fallback more tolerant
  • video: fix playback of pal8
  • video: multiple display-sync fixes
  • vo: fix no-audio mode with interpolation enabled/display-sync disabled
  • vo_direct3d: fix operation (issue #2434)
  • vo_drm: handle possible errors from sigaction
  • vo_drm: show osd in audio only mode
  • vo_opengl: do not attempt to cache frames in FBO in dumb-mode (issue #2432)
  • vo_opengl: win32: always request MMCSS for DWM
  • vo_opengl: win32: try to enable DwmFlush by default
  • vo_vdpau: check VDP_RGBA_FORMAT_A8 support
  • win32: request MMCSS "Playback" profile

This listing is not complete. Check DOCS/client-api-changes.rst for a history
of changes to the client API. A complete changelog can be seen by running
git log v0.12.0..v0.13.0 in the git repository or by visiting either
v0.12.0...v0.13.0 or
http://git.srsfckn.biz/mpv/log/?qt=range&q=v0.12.0..v0.13.0

v0.12.0

29 Oct 02:54
Compare
Choose a tag to compare

NOTE: This release changes the default format for youtube-dl and removes some
workarounds related to MPEG DASH support. However, the required changes to
FFmpeg code are not in any FFmpeg release yet (as of 2015-10-29), so for now,
playing DASH streams requires using FFmpeg git master. You can work around
this by using the --ytdl-format=best option.

Features

New

  • vo_opengl: support new VAAPI EGL interop (requires Mesa 11)
  • vo_opengl: vaapi: add Wayland support (#478)
  • bring back the x11 video output (#2300)
  • vo_opengl: support all kinds of GBRP formats

Removed

  • video: remove VDA support (VideoToolbox is preferred)

Behavior

  • vo_opengl: enable X11 EGL backend by default (disabled for NVIDIA due to driver bugs)
  • ytdl: don't override user-set format in no-video mode
  • sub: adjust behavior on mismatching video/subtitle aspect ratio

Options and Commands

Added

  • audio: add option for falling back to ao_null
  • options: add support for client certificate authentication
  • input: add key name for U+3000 IDEOGRAPHIC SPACE (#2349)
  • player: add audio drop/duplicate mode to video-sync

Changed

  • vo_opengl: remove sharpen scalers, add sharpen sub-option
  • vo_opengl: make sw suboption work without explicit backend selection (#2361)
  • command: make time properties unavailable if timestamp is unknown
  • command: do not return 0 for bitrate if unknown (make property unavailable instead)
  • vo_opengl: make the default debanding settings less excessive
  • ytdl: disable --all-subs if "sub-lang" is in raw-options

Removed

  • video: remove user-controllable PTS sorting (--pts-association-mode)

Fixes and Minor Enhancements

  • player: fix another --force-window bug (#2339)
  • player: add wav to list of external audio file extensions (#2378)
  • ao_alsa: fix failure to find any sample format
  • player: make stop command actually stop in all cases
  • audio: various fixes related to audio device hotplugging
  • vo_xv: fix crash with --wid (#2386)
  • ytdl: Remove DASH hacks, use DASH by default (#579, #1321, #2359)
  • player: be slightly less prone to framedrop in display sync mode
  • sd_lavc: extend subtitle resolution if images go outside video frame
  • player: offset chapter display by start time
  • command: make bitrate properties work correctly for external tracks
  • w32_common: disable IME
  • player: fix display-sync A/V calculation on high playback speeds
  • player: fix display sync A/V difference estimation on drops
  • player: raise display sync desync tolerance

This listing is not complete. Check DOCS/client-api-changes.rst for a history
of changes to the client API. A complete changelog can be seen by running
git log v0.11.0..v0.12.0 in the git repository or by visiting either
v0.11.0...v0.12.0 or
http://git.srsfckn.biz/mpv/log/?qt=range&q=v0.11.0..v0.12.0

v0.11.0

22 Sep 23:22
Compare
Choose a tag to compare

Features

New

  • vo_opengl: implement debanding

Removed

  • audio/filter: remove center, extrastereo, karaoke, sinesuppress, sub,
    surround, sweep, ladspa, hrtf, export and bs2b filters (these are either
    considered useless or have replacements in lavfi)
  • video/filter: remove lavfi wrappers for noise, hqdn3d, unsharp and delogo
    (these filters remain usable through lavfi)

Behavior

  • vo_opengl: require FBOs by default (use dumb-mode suboption for old hardware
    and broken drivers)
  • vo_opengl: enable debanding by default for the opengl-hq preset
  • audio/out: use new sample format determination code
  • player: prefer logical current directory path (affects logic for resuming
    playback)
  • vf_vdpaurb: Pass through non-hardware-decoded content
  • player: make force-window=immediate work in auto-profiles

Options and Commands

Added

  • af_lavrresample: add normalize suboption
  • vo_opengl: add deband, deband-iterations, deband-threshold, deband-range and
    deband-grain suboptions
  • af_lavfi: implement af-metadata property (like vf-metadata) (#2311)

Changed

  • command: make "add 0" not change the value

Removed

  • vo_opengl: remove source-shader suboption

Fixes and Minor Enhancements

  • options: fix --no-config
  • cache: do not include backbuffer size in total stream cache size (#2305)
  • audio/format: actually prefer float over double sample format for
    int->float conversions
  • audio/format: fix interlaved vs. non-interleaved conversions
  • audio/format: revise format conversion scoring
  • video: make --field-dominance set interlaced flag (#2289)
  • vf: vf_stereo3d compilation depends on libavfilter
  • vf_yadif: add hack for Libav compatibility (#2335)
  • player: add opus to list of external audio file extensions (#2336)
  • build: allow disabling vapoursynth completely
  • libmpv/win32: allow multiple windows at the same time (#2319)

This listing is not complete. Check DOCS/client-api-changes.rst for a history
of changes to the client API. A complete changelog can be seen by running
git log v0.10.0..v0.11.0 in the git repository or by visiting either
v0.10.0...v0.11.0 or
http://git.srsfckn.biz/mpv/log/?qt=range&q=v0.10.0..v0.11.0

v0.10.0

03 Sep 18:48
Compare
Choose a tag to compare

Features

New

  • uchardet support (#908)
  • Matroska: reading cue sheets embedded in tags (#1957)
  • Support for VideoToolbox hardware decoding
  • Display sync mode (--display-sync)
  • --force-window=immediate mode
  • fd:// protocol
  • libarchive wrapper for reading compressed archives
  • TOOLS/lua: zones.lua
  • Support for the "new" libavcodec VDPAU API
  • vf_vdpaurb, a new filter for reading back VDPAU decoded frames
  • DXVA2: HEVC support
  • Enabled HEVC profiles with VA API
  • HEVC added to whitelist of hwdec codecs
  • vo_null: framerate emulation
  • vo_opengl: support for custom shaders
  • vo_opengl: temporal-dither-period option
  • vo_opengl: tscale-clamp option
  • vo_opengl: option to attach target-prim/target-csp to window screenshots
  • vo_opengl_cb: "block" framedrop mode (now default)
  • vo_opengl_cb: support for interpolation
  • vo_vdpau: rotation support
  • ytdl_hook: support for 'multi_video' results (#2027)

Removed

  • af_convert24 (af_lavrresample does this now)
  • af_dummy
  • audio: S8, U16, U24, U32 formats
  • DVD and BD menu support
  • TOOLS: youtube-starttime.lua
  • VA API: compatibility crap (< 0.34.0) and vo_vaapi deinterlacer
  • vo_x11

Deprecated

  • vf_dlopen

Behavior

  • audio: softvol scale is now cubic
  • cache: readahead size is limited to half the cache size at the beginning (#2000)
  • charset_conv: "auto" encoding detection now prefers uchardet
  • demux_playlist: skip hidden directories
  • input.conf: O toggles between 2 states only
  • input.conf: Ctrl+s key binding for window screenshots
  • input.conf: mouse volume control (horizontal scrolling) inverted
  • input.conf: L to toggle infinite looping
  • input.conf: remap d/D keys (dropped framedrop cycle, replaced with deinterlacing toggle) (#973)
  • player: disabled seeking on unseekable streams even if the cache is enabled
  • player: parses and exposes m3u playlist titles (#2100)
  • player: --term-playing-msg is now in a separate log category (#1983)
  • player: removed automatic DVB channel advancement on no data
  • player: now restores video-aspect on playback resume
  • player: now uses exit code 0 by default for quit, 4 for signals, etc. (#2029)
  • player: warns against using HLS URLs with --playlist
  • screenshots: changed the default directory in pseudo-gui mode to desktop
  • screenshots: screenshot directory is now created automatically
  • screenshots: default template is now prefixed with "mpv-"
  • TOOLS/lua/autoload: adds all files on start (#2219)
  • vo: vo_wayland moved up in autoprobe list
  • vo_opengl: enabled pbo by default with opengl-hq
  • vo_opengl: cache dir for ICC profiles is now created automatically
  • w32: shift drag and drop appends
  • x11: shift drag and drop appends

Options and Commands

Added

  • af_volume: replaygain-fallback option
  • ao_coreaudio: change-physical-format option
  • ao_coreaudio: exclusive option
  • ao_null: channel-layouts option for testing channel layout selection
  • audio: --audio-spdif as new method for enabling passthrough
  • cache: --cache-backbuffer to configure cache backbuffer size
  • command: define-section command for defining input bindings
  • command: audio-params and audio-out-params properties
  • command: keypress, keydown, and keyup commands
  • command: playlist_shuffle command (#965)
  • command: option-info/N/set-locally property indicating per-file options (#2165)
  • command: protocol-list property (#1972)
  • command: track-list/N/audio-channels property
  • demux: --demuxer-max-packets and --demuxer-max-bytes options to control maximum queue size
  • input: relative percentage seek (#1950)
  • osc: time display configuration options
  • player: --playlist-pos option
  • screenshots: --screenshot-jpeg-source-chroma option to disable JPEG 4:4:4 output
  • screenshots: --screenshot-high-bit-depth option to allow or disallow 16 bit output
  • screenshots: --screenshot-directory option
  • sub: --stretch-image-subs-to-screen option for stretching image subtitles to screen (#2098)
  • TOOLS/stats-conv: allow passing regex via command line
  • video: --video-aspect-method option to configure container vs. bitstream aspect ratio (#2259)
  • vo_drm: mode suboption to set the mode ID to use
  • vo_opengl_cb, vo_opengl: --hwdec-preload option for preloading hwdec context
  • vo_rpi: background disabled by default
  • vo_xv: buffers suboption to configure number of buffers
  • win32: portable config mode (#2042)

Changed

  • audio: changed the range of the volume option/property (0 is still silence, and 100 now always means unchanged volume)
  • command: allow changing deinterlace property any time
  • command: allow changing track properties while no file is loaded
  • command: always make video-aspect property accessible
  • command: better choice when to allow playback-related commands
  • command: change OSD symbol for absolute perc. seek
  • command: change the default action for rescan_external_files
  • command: change the hwdec properties
  • command: define-section with empty contents removes a section
  • command: export stereo 3D tags (#2066)
  • command: make auto-deinterlacing output at field rate
  • command: make deinterlace property use interlaced-only yadif mode
  • command: make property event mask matching more restrictive
  • command: make the playback-time property writable
  • input: allow - as separator between commands, instead of _
  • options: --loop without argument means looping forever (#1970)
  • options: make keyvalue list parsing less strict
  • player: extend --hls-bitrate option (#2116)
  • vf_yadif: expose interlaced frame mode
  • video: --video-stereo-mode=no to disable automatic stereo conversion (#2111)
  • vo_opengl_cb, vo_opengl: --hwdec-preload for preloading hwdec context
  • vo_opengl: replace icc-cache with icc-cache-dir
  • vo_opengl: icc-profile overrides icc-profile-auto

Renamed

  • command: rename audio-format property to audio-codec-name
  • options: rename --media-title option to --force-media-title
  • vo_opengl: rename use_full_range to use_normalized_range

Deprecated

  • --ad-spdif-dtshd (use --audio-spdif=dts-hd)
  • audio-samplerate property
  • length property

Removed

  • get_property command
  • --demuxer-readahead-packets and --demuxer-readahead-bytes
  • image_writer: don't use jpeg baseline, and remove useless jpeg-optimize and jpeg-baseline options
  • --leak-report
  • --slave-broken
  • vo_opengl: npot suboption

Fixes and Minor Enhancements

  • ad_spdif: use DTS-HD passthrough only if the audio is really DTS-HD (#1949)
  • af: fix behavior with filter chains that require a large number of auto-inserted conversion filters
  • af_lavcac3enc: fix A/V sync
  • ao_alsa: accept 7.1 over HDMI
  • ao_alsa: refuse to use spdif if AES flags can't be set
  • ao_wasapi: fix crash on hotplug init error
  • audio: avoid wasting CPU due to continuous wakeup (#1958)
  • audio: do not exit when loading small files in paused mode
  • audio: fix channel map fallback selection
  • audio: fix crash on uninit
  • audio: fix --end handling (#2189)
  • audio: fix EOF state with --keep-open (#2167)
  • audio: fix restoring volume
  • charset_conv: fix switched parameters (#2186)
  • charset_conv: use our own UTF-8 check with ENCA only (#2195)
  • cocoa: don't load hardcoded icon if running from bundle
  • cocoa: hide cursor using a blank image instead of a system-wide API (#503)
  • command: do not exit playback if the B point of A-B loop is past EOF (#2046)
  • command: fix audio-out-detected-device property
  • command: fix track property when no file is loaded
  • command: fix video-aspect property update notification (#2194)
  • command: let track properties return option value in idle mode
  • demux: don't get stuck on some cases of timestamp resets
  • demux: handle Matroska-style replaygain tags as well (#2128)
  • demux_lavf: do a better job at guessing the vobsub .sub filename
  • demux_mkv: disable ordered chapters if ChapterTimeEnd is missing
  • demux_mkv: discard broken index
  • demux_mkv: fix mpeg2 mapping
  • demux_mkv: ignore deprecated FrameRate, do not assume PAL
  • demux_mkv: improve video duration detection heuristic
  • demux_mkv: parse FLAC channel layouts
  • demux_playlist: make mime type comparison case-insensitive
  • dxva2: fix handling of cropped video
  • idet.sh: Support larger files
  • mp_image: fix vf_vdpaupp references (#2115)
  • options: fix conversion of flags to strings
  • options: move program name to end of window title (#2188)
  • options: remove the period at the end of "No file."
  • osc: completely disable if no VO window exists
  • osc: exit tick immediately if disabled
  • osc: reinit on playlist changes
  • osx: add NULL check for input context in a missing case
  • player: fix crashes when adding external tracks before loading main file (#1984)
  • player: increase tick event update frequency
  • player: make decoding cover art more robust (#2056)
  • player: raise maximum idle time
  • player: return better guess for playback time during seeks
  • player: show larger cache sizes in MB on status line
  • player: slim down A/V desync warning
  • sd_ass: assume negative durations are unknown durations, and handle them (#2244)
  • terminal: disable terminal foreground state polling
  • terminal-unix: set terminal mode on init
  • timer: fix a corner case on clock changes
  • TOOLS: make autodeint detect telecine in parallel
  • TOOLS/zsh.pl: die loudly if mpv fails to run
  • vaapi: prefer direct display over copy-back
  • vaapi: fix some videos only showing up green (#2123)
  • vaapi: treat cropped decoder output slightly more correctly
  • vda: add support for nv12 image formats
  • vd_lavc: fix a hw decoding fallback case
  • vf_stereo3d: drop internal implementation
  • vf_vavpp: don't attempt to deinterlace progressive frames
  • vf_vavpp: fix bob deinterlacing for bottom field first videos
  • vf_vdpaupp: Don't crash when evaluating interlacing of NULL mpi
  • video: always re-probe auto deint filter on filter reconfig
  • video: better heuristic for timestamp resets
  • video: fix panscan in vertical case
  • video: fix VideoToolbox/VDA autodetection
  • video: unbreak EOF with video-only files that have timestamp resets
  • vo_direct3d: fi...
Read more

Release 0.9.2

19 May 02:20
Compare
Choose a tag to compare

Note: due to the release manager being MIA, releases are hereby stopped. Use git master.

Changes

  • The Lua check now also checks for lua52.pc, as used by Arch Linux testing.
  • (X11) vo_opengl's icc-profile-auto now queries the current ICC profile
    relative to the center of the window.
  • ao_coreaudio, ao_alsa now support adding dummy padding channels for
    better compatibility with hardware decoders that only support specific
    channel counts (e.g. 5.1 now should work on a decoder that only accepts 7.1).
  • Channel fallback (in case the audio device doesn't natively support a given
    channel layout) has been improved.
  • vf_vapoursynth now rejects unaligned video instead of outputting corrupted
    video.
  • mpv now tries to autoload .sup subtitles as well.

Bug fixes

  • vo_opengl's default for fbo-format is now rgba16, to avoid rounding
    errors when using non-default cscale (issue #1918).
  • Improved framedrop behavior when playing video that has higher framerate
    than the display (issue #1897).
  • Trying to play a directory will no longer spam Connection lost! to the
    console log.
  • (Linux) Several vo_rpi bugfixes.
  • (Linux) Several vo_drm bugfixes. Pan&Scan is now supported.
  • (X11) Fix fullscreen behavior on certain window managers (issues #1937,
    #1920).
  • (OSX) The OSD no longer always shows up on startup.
  • (OSX) Several ao_coreaudio and ao_coreaudio_exclusive bugfixes.
  • (OSX) Fixed potential crash on exit when using Cocoa.
  • (ClientAPI) vo_opengl_cb now actually applies options changed at runtime.
  • (OSX, ClientAPI) Cocoa now works when both the cplayer (mpv) and libmpv
    are built at the same time; however, libmpv now always creates an
    application singleton. Cocoa has to be disabled completely to prevent
    libmpv from creating the singleton.

This listing is not complete. A complete changelog can be seen by running
git log v0.9.1..v0.9.2 in the git repository or by visiting
v0.9.1...v0.9.2