Releases: mpv-player/mpv
v0.18.0
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
Release 0.17.0
Note: The client API examples have moved to https://github.com/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
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
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
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
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
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
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
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...
Release 0.9.2
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
'sicc-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 forfbo-format
is nowrgba16
, to avoid rounding
errors when using non-defaultcscale
(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
andao_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
) andlibmpv
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