* Thu Jul 25 2024 aloisio@gmx.com
- Update to version 0.38.0+git20240618.bc5ab97d (fixes: boo#1228348
upstream reference gh#mpv-player/mpv#14595)
Note: last version before the ffmpeg version requirement bump
* ao_avfoundation: guard features only available on macOS 11.3 and 12
* cocoa-cb: guard color spaces that are only available on 10.15.4 upwards
* mac/compat: fix broken CGColorSpace declaration on SDK 11 only
* mac/event: remove swift 5.6 language feature that is mandatory with 6.0
* mac/compat: add withLock fallback for xcode older than 14
* mac/log: properly guard logger usage behind platform version check
* bash-completion: remove hashbang
* fuzzers: enable edl, file and lavf protocols
* m_options: limit list entries to 100
* m_options: fix mark_del leak on error
* fuzzer_set_property: force untimed and pause state
* demux_edl: fix infinite loop on empty EDL files
* fuzzers: disable some targets as we hit out of space errors
* osc.lua: add script message to show up the OSC
* stream: don't exit on first iteration if there is no match
* ad_spdif: add an assert for lavf_ctx
* editorconfig: punish tab usage
* osc.lua: replace tabs with spaces
* fuzzers/meson: set link language to cpp
* demux_lavf: fix null derefence of stream variable
* d3d11: return minimum bitdepth for display output and swapchain
* demux_lavf: add format hack entry for jpeg metadata frames
* demux_lavf: fix null derefence in io_open callback
* stats.lua: align 100% correctly on page 2
* vf_vapoursynth: upgrade to VapourSynth API v4
* demux_lavf: drop jpeg frames that are at a nonzero pos
* Revert "demux_lavf: pass jpg filenames to ffmpeg for probing"
* input: map Num 5 to distinct value when numlock is off
* input.conf: make Alt+BS reset panscan
* console.lua: don't enable the console-input input section
* osc.lua: fix timetotal and timems settings
* stats.lua: display file tags
* input: don't resolve double clicks on the active mouse section
* lua: don't pass nil as the second argument of mp.get_property_number
* DOCS/interface-changes: fix formatting
* TOOLS/gen-interface-changes.py: sort interface changes by file content
* DOCS/contribute.md: require interface change begin with type
* stats.lua: remove print_perfdata_passes
* stats.lua: add page 5 for currently selected tracks information
* stats.lua: make the append function increment index only on newline
* sub: update codec info
* osc.lua: add option to use display fps for update interval
* osc.lua: unify observe_property style
* osc.lua: add option to make rendering smoother
* opengl: add --egl-output-format
* opengl: add --egl-config-id
* vf_vapoursynth: add parameter to pass arbitrary string to script
* options: add --osd-playlist-entry
* DOCS/compile-windows.md: improve Windows build documentation
* console.lua: prettify unselected track log messages
* select.lua: support extracting ytdl_hook subtitles
* select.lua: hide the hour when it's 0
* select.lua: seek to the currect subtitle line when paused without video
* select.lua: preselect the correct sub line with duration >= 100 minutes
* loadfile: improve the format of terminal track information
* ci/mingw: install wine optionally
* ci/mingw: use Ubuntu 24.04
* ci/msys2: compact build script
* ci/msys2: re-enable 32-bit builds
* ci/mingw: don't run test on 32-bit binary
* hwdec_vaapi: suppress comparision warning
* wayland_common: properly handle modifiers for keyboard enter keys
* meson: add -fno-trapping-math to default flags
* meson: add -fno-signed-zeros to default flags
* ci/mingw: enable javascript support
* osc.lua: fix user configurable colors
* ra_d3d11: make cache header constant size regardless of the build
* ao_wasapi: don't limit the scope of execution context
* w32_common: stop IME initialization timer after first try
* default.js: handle canceled key bindings
* defaults.lua: handle canceled key bindings
* command: add canceled state to key-binding client message
* input: mark a command as canceled if it is explicitly dropped
* bstr: use memchr and memrchr for bstrchr and bstrrchr
* terminal-win: use proper NTAPI callback for FLS
* DOCS/compile-windows.md: update Windows compilation documentation
* common: clang supports __builtin_clz also in non-GNU modes
* parse_commandline: fix incorrect win32 check
* misc/thread_tools: fix incorrect win32 check
* ao_pcm: fix incorrect win32 check
* player/main: concat string at compile time
* sub/sd_ass: rewrite is_animated()
* meson: clear flags used for build
* {x11_common,context_x11egl}: suppress Wundef warning
* ao_pipewire: fix access to undefined byte order definitions
* osdep/endian: add missing byte order defines
* ao_coreaudio_chmap: fix shadowed variable
* stream_cdda: suppress Wundef warning
* fuzzers/common: add prototype for LLVMFuzzerTestOneInput
* input: fix grammar errors and typo
* input: only begin VO dragging if the section allows
* autoload.lua: always accept current file as a valid file
* autoload.lua: match also image extension
* autoload.lua: cosmetic changes
* autoload.lua: fix options update
* sub: avoid unneeded calls to is_animated
* input: reset doubleclick timer when dragging begins
* input: un-hardcode VO dragging
* input: prevent MBTN_LEFT conflict with VO dragging
* input: implement VO dragging deadzone
* input: fix mouse position equality check
* input: begin VO dragging when moving mouse while left button is down
* DOCS/man/options.rst: remove DVD menu reference for --input-cursor
* test/meson: remove unneded sources
* ci/mingw: resolve pkgconfig deprecation warning in meson
* ci/mingw: run meson tests
* ci/mingw: add exe_wrapper to cross file
* ci/mingw: support encode mode
* ci/mingw: use ninja for cmake builds
* test/paths: skip normalize tests if pathcch library is not available
* test_utils: don't use subprocess for diffing test results
* test/libmpv_encode: print logs also during initialize
* test/libmpv_encode: don't use mpv internals for test
* player/playloop: remove now unused get_percent_pos()
* win32: quantize taskbar playback position into uint8 range
* Revert "d3d11: calc vsync interval on real stats, not just last interval"
* TOOLS/autoload.lua: fix directory_mode and ext options
* osd: don't use get_percent_pos function
* command: simplify printing floats as integers
* README: link to discussions
* osc.lua: fix lint warnings
* TOOLS/test-hooks.lua: fix lint warning
* TOOLS/status-line.lua: fix lint warnings
* TOOLS/osd-test.lua: fix lint warning
* TOOLS/observe-all.lua: fix lint warning
* TOOLS/nan-test.lua: fix lint warnings
* TOOLS/cycle-deinterlace-pullup.lua: fix lint warnings
* TOOLS/command-test.lua: fix lint warnings
* TOOLS/autoload.lua: fix lint warnings
* TOOLS/autodeint.lua: fix lint warnings
* TOOLS/autocrop.lua: fix lint warnings
* TOOLS/ao-null-reload.lua: fix lint warnings
* ytdl_hook.lua: fix lint warnings
* console.lua: fix lint warnings
* mpv.desktop: fix capitalization error
* mpv.desktop: add Arabic translation
* TOOLS/gen-interface-changes: wrap long lines to 80 col
* input.conf: change 'u' binding to cycle between 'force' and default
* options: make sub-ass-override default to 'scale'
* options: move sub-ass-override 'scale' above 'force'
* sd_ass: only set sub-scale for 'scale', 'force' or 'strip'
* DOCS/input: clarify the difference between audio-pts and time-pos
* player: replace get_current_time with get_playback_time in some spots
* player/playloop: force get_playback_time to be at least 0
* player: put speed adjustment back into playing_audio_pts
* player/video: fix incorrect VO frame duration and frame drops
* x11: correct position coordinates if mpv was launched with --fs
* vo_vaapi: remove redundant function call
* vo_vaapi: fix use-after-free when quitting
* vo_vaapi: fix use-after-free of current frame
* console.lua: fix crash with set ;<Tab>
* console.lua: fix crash if no completions exist
* Revert "ao_pipewire: add EOF handling"
* Revert "ao_pipewire: wait for draining finishes before restart ao"
* playloop: don't loop when seeking to the end of cover art while paused
* ao_pipewire: wait for draining finishes before restart ao
* ao_pipewire: add EOF handling
* ao_avfoundation: use blocking ao_read_data
* ao_avfoundation: add EOF handling
* ao: add ao_stop_streaming
* ao: add eof, pad_silence, and blocking arguments for ao_read_data
* ao_coreaudio: set ao->device_buffer base on hardware latency
* osxbundle: refactor Information Property List
* wayland_common: ignore unknown key states
* wayland_common: handle pressed keys in keyboard_enter event
* DOCS/man: replace legacy option syntax usage
* Revert "fuzzers/load: clear old temp files if they exist"
* ad_spdif: check return value of av_parser_parse2
* ad_spdif: check for AC3 if parser fails to detect profile
* ad_spdif: set codec params
* stream_lavf: don't add ffmpeg bluray or dvd protocols
* build: dynamically generate mpv.desktop file protocols
* stream: implement get_protocols method for stream_lavf
* av_common: parent mp_get_lavf_demuxer contents to the list
* wayland: use wl->callback_surface for idle inhibitor creation
* fuzzers/load: clear old temp files if they exist
* DOCS/man/console.rst: remove extraneous words
* mp_image: remove unneeded PL_HAVE_LIBDOVI check
* fuzzers: always return 0
* DOCS/options: --sub-scale-by-window doesn't affect ASS subtitles
* ci/lint: only allow specific characters in subjects
* ci/lint: allow the first word after : to be an option with --
* ci/lint: only allow space instead of \s or \s+
* workflows/comment: more newline fixes to make formatting work
* workflows/comment: add missing escape fix
* ci/mac: silence unnecessary reinstall warnings
* select.lua: allow ffmpeg to print errors if it fails
* osc.lua: handle osd-scale-by-window runtime update
* stats.lua: handle osd-scale-by-window runtime update
* {stats,osc}.lua: respect --osd-scale-by-window by default
* stats.lua: add add auto value to vidscale option
* osc.lua: add auto value to vidscale option
* DOCS/man/options.rst: recommend --osd-scale-by-window for UI scale
* meson: limit concurrent link jobs to 16
* ao: don't call driver->set_paused after reset
* osdep/path-win: fix leak of portable_path
* osdep/io: fix leak of environment strings on win32
* DOCS/interface-changes.rst: document loadfile breaking change
* DOCS/man/input.rst: document breaking change of loadfile index argument
* DOCS/man: note that default autoprobe order is unrealiable
* DOCS/compatibility.rst: add requirement when changing default values
* DOCS/compatibility.rst: add provision for dealing with severe breakages
* DOCS/compatibility.rst: require more details about breaking changes
* DOCS/compatibility.rst: fix formatting
* ci: save cache also on failures
* playloop: don't redraw without subs on quit
* workflows/cleanup_caches: minor cosmetic changes
* workflows/comment: refactor comment workflow to not use github-script
* console.lua: fix completing change-list ao/vo/gpu-context remove
* input: prioritize builtin bindings matching longer key sequences
* console.lua: fix the max log lines calculation
* stats.lua: prevent freeze in certain cases with vidscale=no
* console.lua: use all available lines for selection
* select.lua: strip trailing zeros from FPS values
* select.lua: handle sub-start being earlier than ffmpeg's timestamps
* select.lua: don't needlessly initialize default_item
* select.lua: preselect the previous sub line without a current line
* select.lua: fix preselecting the current subtitle line
* console.lua: add nonrepeatable prefix to command_prefixes
* input/cmd: add nonrepeatable prefix
* ad_spdif: add missing codec_desc initialization
* ci/cleanup_caches: group by cache prefixes too
* ci: clear old caches to avoid master branch cache trashing
* msg: clear status line only if needed
* msg: split mp_msg_flush_status_line into private and public variant
* msg: check target stream before printing
* ci: don't pin Ubuntu version where it doesn't matter
* ci/mingw: clean installed packages
* ci/mingw: use meson for libass build
* ci/mingw: remove non-existent cmake option
* wayland: also log version numbers with protocol interface names
* ci/win32: override link args only for the target that needs them
* ci/win32: add Vulkan-Loader
* meson: assume vkCreateDisplayPlaneSurfaceKHR is available when internal
* ci/win32: build shaderc
* ci/win32: use ccache
* ci/win32: enable all available projects from meson's wrapdb
* ci/win32: add spirv-cross
* ci/win32: add shaderc
* ci/win32: remove Strawberry Perl from path
* github/issue_template: ask for possible sample files on feature request
* github/issue_template: rework system info section and provide commands
* github/issue_template: move mpv information into its own section
* github/issue_template: add information on how to create backtraces
* github/issue_template: mention (nightly) builds and packages for testing
* github/issue_template: reword file upload instruction
* github/issue_template: reword log file instructions
* github/issue_template: be more specific about performance-related issues
* github/issue_template: add checkboxes as instruction check
* github/issue_template: rework issue templates with github forms
* github/issue_template: mention github Discussions for questions
* wayland: cap xdg_wm_base at 4 if wm_capabilities aren't supported
* Revert "player: do not exit when a seek gets queued"
* stream: remove directory playlist hint
* stream: check file descriptor passed to fd:// or fdclose://
* various: add missing checks for directory streams
* {options,player}: fix stream leaks
* stream: disallow reading or writing to directories
* fuzzer: add dedicated fuzzers for each demuxer
* fuzzer_load: use memfd_create instead of real file
* fuzzer_load: merge file and config load into one file
* fuzzers: don't build binaries for disabled protocols
* av_common: fix integer overflow when adjusting timebase
* select.lua: strip brackets in select-subtitle-line
* select.lua: add this script
* console.lua: close when pressing enter with input.select
* console.lua: fix ctrl+f and ctrl+b keybindings
* console.lua: don't crash when scrolling without matches
* console.lua: truncate lines longer than the maximum width
* console.lua: don't convert integers for mp.input to string
* input: fix builtin sequence bindings
* console.lua: implement a command parser to complete more things
* player: add option-info/<name>/expects-file
* osc.lua: remove scaleforcedwindow
* autocrop.lua: fix some lint warnings
* ytdl_hook.lua: fix some lint warnings
* stats.lua: fix some lint warnings
* osc.lua: fix some lint warnings
* options.lua: fix some lint warnings
* defaults.lua: fix some lint warnings
* console.lua: fix some lint warnings
* auto_profiles.lua: fix some lint warnings
* test-hooks.lua: fix variable shadowing warning
* status-line.lua: fix unused variable warning
* skip-logo.lua: fix some lint warnings
* pause-when-minimize.lua: fix unused variable warning
* ontop-playback.lua: fix unused variable warning
* observe-all.lua: fix some lint warnings
* cycle-deinterlace-pullup.lua: fix unused variable warnings
* command-test.lua: fix some lint warnings
* autoload.lua: fix some lint warnings
* autodeint.lua: fix some lint warnings
* audio-hotplug-test.lua: fix some lint warnings
* acompressor.lua: break long lines
* github/workflows: add lua linting
* Revert "stream: don't try to read from all-sparse/no-data files"
* vf_vapoursynth: pass image properties from input
* vf_vapoursynth: fix _ChromaLocation
* hwdec_cuda_vk: add missing io.h include
* audio: report EOF also for untimed AO mode
* console.lua: increase margins from the bottom-left corner
* vo_gpu_next: check if existing cache file has correct size
* test: test mp_guess_lang_from_filename with [] and ()
* meson: add link flags also to cpp
* audio: change bps format to int64_t
* fuzzers: set network-timeout to 1 second
* command: add dolby-vision-profile and dolby-vision-level to track-list
* demux_mkv: inject AV_PKT_DATA_DOVI_CONF to demuxed packets
* demux_mkv: demux Block Additional Mappings
* test: test mp_guess_lang_from_filename()
* misc/language: move mp_guess_lang_from_filename() here
* external_files: detect language tags with hyphens
* external_files: rename variables in guess_lang_from_filename()
* lcms: check for null arg in gl_parse_3dlut_size
* misc/language: store string length instead of null terminator
* player/loadfile: match language and subcodes
* Revert "misc: add language-matching utilities"
* Revert "loadfile: use mp_match_lang_single"
* Revert "loadfile: compute audio lang for sub selection when using lavfi-complex"
* fuzzer_loadfile_direct: exclude paths also for file://
* demux_edl: make protocol comparison case insensitive
* fuzzer_set_property: fix for other types than string
* dmabuf: fix warnings on 320-bit build
* filter/vf_gpu_vulkan: fix Vulkan handle type
* player/client: fix typo in description of MPV_ERROR_UNINITIALIZED
* fuzzers: add fuzzer for config parsers
* Revert "ao: in ao_play_data, wakeup core for untimed AO as well"
* ao: in ao_play_data, wakeup core for untimed AO as well
* af_scaletempo: optimize overlap search
* af_scaletempo: use taxicab distance for offset search
* af_scaletempo: don't use a window for offset search
* af_scaletempo: use Hann function for overlap window
* af_scaletempo: add comment to overlap calculation
* js: fix defaults.js
* scripting: add mp.input.select()
* drm_prime: remove off by one when allocating new ref counter
* drm_prime: fix issue detected by valgrind
* stream: don't try to read from all-sparse/no-data files
* various: fix comma style
* various: fix indentation
* various: fix tabs in code
* various: fix trailing whitespace
* hwdec_cuda: reduce nesting in check functions
* hwdec_cuda: avoid gpu wakeup by deferring cuInit
* msg: print all messages to one stream
* player/main: select msg output stream early
* github/workflows: link MSVC artifacts in comments
* ci: add Windows native build
* test: mark libmpv as expected fail if OSC is not available
* test/libmpv_encode: minor adjustments for win32 build fix
* win32: add WinMain
* player/configfiles: fix utime.h include for Windows SDK
* stream_file: declare structures available only in Windows DDK
* osdep/mpv.rc: fix encoding of MPVCOPYRIGHT
* common: define some bits for Windows SDK
* ao_wasapi_utils: define missing GUIDs for C
* ao_wasapi_changenotify: fix IsEqualPropertyKey for C
* various: remove unused sys/time.h include
* osdep/compiler: clang also recognizes those attributes
* osdep/main-fn-win: add struct typedef for compatibility
* osdep/semaphore: don't include files if they are not used
* win32: fix platform checks
* io_utils: use mp_mkostemps instead of mkstemp
* osdep/dirent: add implementation for Windows SDK build
* ao_wasapi: fix include order
* various: move strings.h inclusion to common.h
* various: move unistd.h inclusion to common.h
* meson: add defines for Windows build to avoid warnings
* meson: remove Windows subsystem version, it is 6.0 by default
* command: add normalize-path command
* DOCS/lua: fix some argument names
* DOCS/input: move escape-ass documentation
* misc/path_utils: normalize win32 paths
* player: normalize paths for resuming playback
* cocoa-cb: add support for macOS color space transformation (EDR/HDR)
* github/workflows: add swift linting
* test: fflush between printf and abort
* powershell-completion: add PowerShell command line completion
* DOCS/input: document sub-seek 0
* docs: mention Cache section in sub-seek
* command: return lavfi filters in option-info/[av]f/choices
* osc: remove trailing space
* demux_mkv: fix image detection
* demux: keep track of ts information per stream type
* win32: fix maximize state with --border=no
* sd_ass: don't log if subtitles have unknown duration
* ci/lint: use long commit hash
* demux_mkv: make V_QUICKTIME codec detection generic
* osd: show left arrow when playing backwards
* tools: add narrow left arrow glyph for OSD
* osc: show left arrow when paused while playing backwards
* f_lavfi: reject filters with too many in/outs
* f_decoder_wrapper: clear decoder info on deinit
* ci/mingw: update dependency versions
* OSC: implemented user configurable colors
* win32: make context menu items accessible from the window menu
* win32: move context menu init/uninit to GUI thread
* wayland: set wl->scaling if there is no wl->current_output yet
* sub/osd: fix rounding when rescaling bitmap subtitle rects
* win32: support multitouch
* options: add --native-touch option
* wayland_common: support multitouch
* input: add MP_TOUCH_RELEASE_ALL
* input: add --input-touch-emulate-mouse option
* command: add touch-pos property
* input: add multitouch support functions
* sd_lavc: reduce unnecessary error log on probing nonexistent codecs
* sd_lavc: fix null dereference on error
* wayland: log if cursor shape support is missing
* DOCS: fix spelling of environment and corresponding/corresponds
* demux/packet: add support for ITU T.35 metadata in Matroska
* demux: support VVC Matroska demux
* mac: properly handle regular expressions without force unwrap
* mac: code cleanup and consistency changes, fix linting issues
* mac/helper: make wakeup callback declaration consistent
* mac/touchbar: use KVO block API instead of old obj-c instance method
* TOOLS/lua/autoload: make ignore_patterns more generic
* TOOLS/lua/autoload: allow multiple ignore_patterns
* TOOLS/lua/autoload: add ignore_pattern option
* w32_common: fix show-in-taskbar toggling after explorer is restarted
* zsh-completion: complete --gpu-context
* ci: add fuzzers build test
* fuzzers: add new fuzzer targets
* player/command: mark sub-text-ass as deprecated
* player/command: add sub-text/ass-full sub-property
* player/command: move sub-text-ass to a sub-property
* sd_ass: allow get_text to return more than 500 bytes
* stats.lua: show osd-dimensions property
* sub/lavc_conv: don't override style of converted teletext pages
* sub/lavc_conv: don't strip ASS style header
* DOCS/vf: update vf_gpu options
* vf_gpu: vulkan and egl implementations
* af_scaletempo2: migrate to internals to talloc
* af_scaletempo2: remove redundant buffer zeroing
* ao_wasapi: fix player core lockup when avoiding premature buffer fills
* Revert "ao_wasapi: address premature buffer fills in exclusive mode"
* m_config_core: fix forced option notification with m_config_cache
* mac/input: add support for dead key reporting
* mac: make display-names unique to allow specific selection
* dec_sub: fix locking for sub_ass_get_extradata
* test: make libmpv_test abort if an error is logged
* vo_dmabuf_wayland: use wl_fixed_from_int when setting viewport source
* vo_dmabuf_wayland: fix scaling for subsurface positioning
* DOCS/man: refer to "mp.options functions" for script config docs
* player/loadfile: check if forced track is also tagged as default first
* ao/avfoundation: optimise preprocessors for included coreaudio code
* ao/audiounit: fix building for iOS
* ao_coreaudio: add a comment for ignoring returned sample count
* Revert "ao_coreaudio: signal buffer underruns"
* input: fix deadlock in adding gamepad input src
* d3d11: disable IDXGIInfoQueue usage if dxgidebug.h is incomplete
* d3d11: use IDXGIInfoQueue instead ID3D11InfoQueue
* demux: also read "CUESHEET" tag from stream metadata
* ao_wasapi: set 0 buffer duration on initialization for shared mode
* ao_wasapi: add `--wasapi-exclusive-buffer` option
* context_drm_egl: guard gbm_device on uninit
* x11: always do a reset_size if geometry/autofit is updated at runtime
* options: flag geometry/autofit options with force_update
* player: always notify when writing window-scale option
* m_option: add a force_update boolean
* stats.lua: add option to disable scale with video size
* stats.lua: add option to control plot border width
* stats.lua: remove redundant style override
* demux_lavf: pass jpg filenames to ffmpeg for probing
* m_option: change confusing error messages for obj_settings_list
* DOCS/man/options: mention the new priority list usage of --gpu-context
* various: add GPU context description
* video/out/gpu/context: add auto dummy context
* video/out/gpu/context: convert --gpu-context to use obj_settings_list
* video/out/gpu/context: don't use hidden flag for contexts
* DOCS/client-api-changes.rst: fix formatting
* command: use property_time() for sub-start and sub-end
* vo_gpu_next: invalidate cache object if requested by libplacebo
* stats.lua: display short decoder name if not generic one is used
* player/command: add track-list/N/decoder
* stats.lua: filter input bindings by typing them
* terminal-win: support mouse input events
* terminal-win: implement terminal_get_size2
* terminal-win: implement terminal_set_mouse_input
* terminal: add terminal_set_mouse_input function
* terminal-unix: style fix
* vo_{tct,sixel,kitty}: implement mouse support
* terminal-unix: ignore unhandled mouse CSI sequences
* terminal-unix: support mouse escape codes
* sd_ass: add `sub-vsfilter-bidi-compat` to enable vsfilter bidi compat
* sd_ass: fix margins for all styles when overriding PlayResX
* sd_ass: replace ifdef with explicit version check
* DOCS: document --show-in-taskbar option
* w32_common: implement --show-in-taskbar option
* x11_common: implement --show-in-taskbar option
* x11_common: detect wm support for _NET_WM_STATE_SKIP_TASKBAR
* stats.lua: inherit OSD styles
* DOCS/input: minor typo correction
* osc: add playlist_media_title option
* dec_sub: fix locking for sub_ass_get_extradata
* input: make mp_input_queue_cmd return a meaningful value
* dec_sub: don't use recursive mutex
* dec_sub: fix locking for sub_is_{primary,secondary}_visible
* input: don't use recursive mutex
* input: avoid unnecessary recursive locks
* input: remove mp prefix for static functions
* input: fix locking of mp_input_bind_key
* options: fix runtime update of teletext-page
* sub/sd_lavc: check decoder output type for dvb and arib
* sub/lavc_conv: set dvb teletext and arib caption output type to ASS
* sub/lavc_conv: take sd context as a parameter for lavc_conv_create
* Update VERSION
* Release 0.38.0
* Revert "ao_coreaudio: switch to ao_read_data_nonblocking()"
* test: add an encoding test with libmpv
* player/misc: fix audio-only fallback when video init fails
* player/command: remove codec-info and use track-list directly
* player: avoid busy looping during reinit_sub
* demux_mkv: print chapter timestamp with constant length
* demux_mkv: add BCP 47 language tags support
* github/issue_template: remove question template
* stats.lua: add codec profile
* player/loadfile: add codec profile to print_stream()
* player/command: add video-codec-info and audio-codec-info
* wayland: fix segfault in surface_handle_enter due to memory read
* osxbundle: use arg list instead of a string for signing subprocess call
* wayland: check if scale actually changes in scaling events
* wayland: only perform a rescale if window is on one output
* demux_mkv: don't warn if yaw/pitch projection is set to 0
* demux_mkv: remove not needed v_projection_pose_roll_set
* demux_mkv: corrected direction of ProjectionPoseRoll rotation
* TOOLS/lua/autoload: fix allow extending ext sets from script-opts
* vo_gpu_next: rotate target crop
* msg: use fwrite
* msg: use defines for hide/restore cursor code
* wayland: apply keepaspect options to wayland configure bounds
* wayland: avoid unneeded calls to xdg_toplevel state functions
* wayland: enforce a state change after a reconfigure
* msg: don't keep status line in partial
* vo_gpu_next: set target resolution to crop value
* stats.lua: remove unused variables
* stats.lua: use '➜' (U+279C) instead '→' (U+2192)
* mac/log: fix use after free when freeing mpv handle
* af_scaletempo2: prioritize louder channels for similarity measure
* test: support format refs for multiple ffmpeg versions
* test: update format refs for new major ffmpeg version
* DOCS/man/mpv: correct description of F8/F9 keybinds
* command: don't use OSD_ASS_0 when converting lists to strings
* mac/vulkan: add support for frame timing via presentation feedback
* mac/window: fix window pinch gesture and modify current-window-scale
* various: make filter internal function names more descriptive
* ao: rename playthread to ao_thread
* vo_gpu_next: keep target params in priv instead of alocating it
* player/lua: fix trailing whitespace for mp.log output
* stats.lua: fix scrolling for page 2
* Revert "vo_dmabuf_wayland: assume counter-clockwise rotations"
* bstr: change bstr0_s to bstr0_lit, restrict it only for string literals
* vo_tct: reduce lut_item size and generate it without snprintf
* vo_tct: use fwrite when appropriate
* win32: change fputs to fwrite wrapper
* vo_tct: add synchronized output support
* vo_tct: add --vo-tct-buffering option
* misc/bstr: add bstr0_s for static initialization
* vo_tct: write frame fully instead of every pixel
* terminal-win: add more control codes support in non-VT mode
* vulkan: use pl_vk_inst_create
* DOCS/man/vo: document vo_caca's hardcoded keybinds
* DOCS/man/options: mention the impact of --hwdec-codecs on startup time
* DOCS/man: unify flag option descriptions
* vo: add win32 context menu support
* ao_pipewire: fix delay calculation
* mac/remote: use event type as key state for proper mapping in function
* mac/apphub: fix opening several files at once via Finder or App icon
* mac/common: reuse hidpi window scale frame calculation helper
* mac/window: cleanup unfsContentFrame usage and make it none optional
* mac/window: fix unfs window size retrieval
* audio/ad_spdif: utilize defined freeing function for AVIOContext
* audio/ad_spdif: specify media type and sample rate in output codecpar
* ci/build-mingw64: enable the SPDIF muxer
* ao_coreaudio: register hotplug_cb in normal init() as well
* ao_pipewire: support set_pause
* ao_wasapi: support set_pause
* ao_avfoundation: support set_pause
* ao: set_pause for pull based ao
* demux: fix seek ranges of images
* player/loadfile: set track->forced_select outside of compare_track
* mac/app: add some verbose logging for app startup and file handling
* mac/apphub: only instantiate log and option when in Application mode
* mac/menu: remove redundant quit func and use identical command func
* mac/app: cleanup and optimise App launch and termination
* mac/apphub: move opening url into AppHub
* mac/app: use new open url App event to simplify open file event handling
* mac/log: fallback to system logger if no mp_log is yet available
* mac/app: rewrite App c main function, startup and termination in swift
* mac/app: rewrite Application class in swift
* wayland_common: set mouse position on pointer enter
* mpv.desktop: translate to Italian
* ao_pipewire: fix buffer size calculation
* ao_pipewire: fix nframes calculation
* ao_alsa: fix snd_config memory leak
* video: also reset video-sync state when resetting video state
* mac/view: fix cursor visibility when toggling fullscreen
* mac: cleanup swift bridge header imports and unify them
* mac/apphub: make DnD behaviour on bundle icon configurable
* mac/log: rename log functions and cleanup class
* mac: use LogHelper directly instead of mp_log
* mac: rename mpvHandle to mpv
* mac: remove now unnecessary objective-c forwarding
* mac/apphub: move cocoa-cb into AppHub
* mac/apphub: move menu bar into AppHub
* mac/app: remove unused Application flag
* mac/apphub: move mac options into AppHub
* mac/apphub: move app icon into AppHub
* mac: cleanup mac headers and include preprocessors
* win32: fix native key repeat support
* DOCS/options: document key autorepeat defaults
* ao_coreaudio: handle latency change on hotplug
* ao_avfoundation: initial avfoundation ao support
* af_scaletempo2: fix false reporting of frame availability
* vo_gpu: support video-target-params
* vo_direct3d: support video-target-params
* vo_xv: support video-target-params
* meson: improve option descriptions
* meson: refine dependencies of many feature checks
* meson: remove some unneeded features from list
* DOCS: update for new --pulse-latency-hacks defaults
* demux_mkv: support V_FFV1 tag
* player/command: optimize duplicated property search in command_init
* ci/mingw: use GAS for vulkan loader
* mac/event: only initialise an EventHelper when necessary
* mac/touchbar: use AppHub directly instead of the singleton
* mac/remote: use AppHub directly instead of the singleton
* mac/touchbar: use EventHelper for event handling
* mac/touchbar: move touch bar into AppHub
* mac/remote: use EventHelper for event handling
* mac/touchbar: fix devision by 0
* mac/remote: fix devision by 0
* cocoa-cb: use EventHelper for event handling
* cocoa-cb: use a separate mpv_handle for cocoa-cb to simplify shutdown
* mac/apphub: migrate remaining events functionality to new AppHub
* mac/event: add helper to subscribe to mpv events and property changes
* hwdec/vulkan: enable the stable AV1 extension
* ci/msys2: fix vulkan package name
* ao_pulse: reenable latency hacks by default
* player/command: fix udata talloc parent
* mac/libmpv: remove unused functions
* mac: optimise and shorten some code
* mac/option: remove now unused computed option variables
* mac/option: rename option structs to properly represent their content
* mac/libmpv: remove mac option handling in favour of option handler
* mac/option: make option helper none optional
* mac/option: make option helper vo struct independent
* mac/option: optimise option pointer access
* mac/option: remove unused and obsolete variables
* mac/option: move option functionality from mpv helper to option helper
* mac/type: move c<>swift type bridging into a dedicated type helper
* meson: conditionalize searching for ANGLE's EGL
* meson: get rid of 'egl-helpers' feature
* meson: fix EGL version check
* video/egl_helpers: fix fallback logic for EGL_KHR_create_context
* video/egl_helpers: log error for eglCreateContext
* options: add --input-commands option
* console.lua: complete fixed precision properties
* test: fflush output stream before abort
* m_property: add `>` for fixed precision floating-point expansion
* osc.lua: escape text
* command: add escape-ass
* input: remove max active section limit
* input: raise maximum key down limit to 16
* stats.lua: use term-size as terminal output size
* player/command: add term-size/[w,h] property
* stats.lua: fix and unify scroll hint
* stats.lua: use term_ellipsis for page 4
* stats.lua: truncate long lines for the terminal
* stats.lua: use scroll function for page 2 and 0
* stats.lua: refactor page 4 scrolling into function
* stats.lua: add more information in audio section
* msg: clear buffered status_line on flush
* msg: simplify the line_skip calculation
* TOOLS: add an interface-changes generator script
* DOCS: document the new way to handle interface changes
* meson: remove winmm dependency for win32 desktop target
* win32: increase hires timer resolution
* win32: avoid multi byte string to wide conversion if not needed
* win32: add puts/fputs wrappers
* win32: optimize mp_vfprintf a little
* misc/bstr: add bstr_to_wchar for win32
* player/main: move terminal_uninit to the end
* win32: cache GetConsoleMode state for stdout/stderr
* win32: don't touch buffering options
* win32-console-wrapper: fix printf specifiers
* win32: don't pass std handles if they are attached to console
* DOCS/options: improve wording of dither-depth
* af_lavcac3enc: fix memory leak on 2ch audio
* various: use thread safe mp_strerror()
* image_writer: refactor screenshot write functions
* image_writer: fix TOCTOU in screenshot filename generation
* Revert "osdep/io: ignore 'x' mode for mp_fopen"
* repack: add restrict qualifier to src/dst pointers
* win32: resolve dropped shell links (Windows shortcuts)
* win32: implement shell link target resolving
* video/image_writer: attach MDVC metadata and CLLI metadata
* builtin.conf: remove debanding from the high-quality profile
* input.conf: add `b` to toggle debanding
* vo_gpu_next: make `dither-depth=auto` mean 8 bpc for non-d3d11 SDR
* vulkan: remove color_depth stub
* osdep/main-fn-win: fix implicit conversion warning
* osdep/threads: fix warning: initializer element is not constant
* ao_lavc: fix warning: ISO C forbids forward references to 'enum' types
* vo_gpu_next: fix -Wembedded-directive warning
* video/out/gpu/spirv: fix warning: zero size arrays are an extension
* common/msg: fix warning: void function should not return void expression
* common/msg: fix warning: use of non-standard escape character '\e'
* options/m_config: fix no newline at end of file
* various: fix -Wold-style-declaration warning
* video/out/placebo/utils: fix -Wignored-qualifiers warning
* demux/cache: fix -Wtype-limits warnings
* meson: bump warning level to 2
* vo_gpu_next: don't render ASS subtitles at HDR colorspace
* mac/touchbar: simplify item and view creation
* mac/touchbar: optimise time item update
* mac/touchbar: optimise constraint calculation
* mac/touchbar: use DateComponentsFormatter for time formatting
* mac/touchbar: simplify update items logic
* mac/touchbar: take playback speed into account for rate limiting
* mac/touchbar: rewrite touch bar in swift
* win32: remove all NC area on Windows 10 with --title-bar=no
* win32: add helper function to check Windows 10 build number
* osc: add missing window controls for --title-bar=no
* win32: adjust top border offset when title bar is disabled
* win32: add DWMWA_VISIBLE_FRAME_BORDER_THICKNESS definition
* win32: use dpi aware GetSystemMetricsForDpi
* win32: update maximized state when leaving fullscreen
* win32: fix window maximized state after setting window size
* various: use static assertions where appropriate
* DOCS/options: --x11-name sets the instance name, not the class's
* demux: add a format-name property
* wayland_common: respect compositor's preferenced size on state change
* DOCS/options: clarify --autofit-larger effect
* wayland_common: always use the current geometry for prepare_resize
* x11_common: unmaximize window on runtime geometry change
* win32: support runtime geometry update
* x11_common: fix window x/y position when updating geometry on runtime
* github/issue_template: add note about --profile=fast and --hwdec
* gpu-next: add support for --dither-depth=auto
* d3d11: get real on the wire bits per color channel
* d3d11: add mp_get_dxgi_output_desc
* mac/view: optimise drag and drop event handling
* mac/input: optimise scroll wheel event handling
* mac/input: move scroll wheel event handling into input helper
* mac/input: optimise mouse movement enabled check
* mac/input: fix switched mouse forward and back button
* mac/input: move mouse event handling into input helper
* ao_coreaudio: stop audio unit after idle timeout
* stream: enable caching for sockets, pipes and FIFOs
* vo_{drm,wlshm}: make query_format checks more correct
* vo_drm: add support for YUYV format
* vo_{drm,wlshm,x11}: add support for video-target-params
* vo: move target_params into responsibility of VO
* context_drm_egl: log fallback correctly
* vo_drm: add support for BGR formats
* vo_drm: use native matching pixel format for XRGB2101010
* mac/input: add missing special keys
* mac/input: add simplified mp_keymap init
* mac/input: remove wrongly mapped modifier keys
* mac/event: move key event handling to input helper and optimise it
* mac/input: define AltGr mask as static NSEvent.ModifierFlags variable
* mac/events: remove redundant functions and optimise input helper usage
* mac/helper: move input ctx related functionality into new input helper
* mac/events: move input ctx related functionality into new input helper
* wayland_common: move WAYLAND_DISPLAY check above vo_wayland_state init
* wayland_common: require WAYLAND_DISPLAY to be set for initialization
* vo_gpu/vo_gpu_next: fix transparency in glx
* meson: fix ios-gl hwdec build
* vo_gpu: fix broken chroma plane for rotated semi-planar formats
* path: don't load any files if --no-config is passed
* DOCS/tech-overview.txt: add builtin.conf to etc/ description
* DOCS/tech-overview.txt: update for merged pull/push glue code
* DOCS/tech-overview.txt: add vo_gpu_next reference
* DOCS/tech-overview.txt: add a section for the new filter framework
* DOCS/tech-overview.txt: update for removed stream inputs
* DOCS/tech-overview.txt: update for split m_config.c/h
* DOCS/tech-overview.txt: fix function/member/header names
* ad_spdif: update deprecated FF_PROFILE_DTS_HD_HRA definition
* options: remove trailing whitespaces
* options: remove --focus-on-open and add --focus-on
* stats.lua: display video parameters after filtering
* vf_format: add hdr10plus sub-parameter to format video filter
* mp_image: add Dolby Vision metadata mapping
* csputils: add missing PL_COLOR_SYSTEM names
* mp_image: add mp_image_params_static_equal for finer comparision
* wayland: always rescale geometry if in a fullscreen/maximized state
* filters/f_lavfi: rename channellayout to ch_layout
* swresample: stop using deprecated {in,out}_channel_layout options
* filters/f_lavfi: handle removed AV_OPT_TYPE_CHANNEL_LAYOUT
* ad_spdif: handle const buf pointee in avio_alloc_context
* osxbundle: avoid running `codesign` with deprecated `--deep` argument
* vo_gpu_next: infer target parameters
* vo_gpu_next: add support for video-target-params
* vo: add video-target-params property
* player/command: fix video-params/[average-bpp, alpha] when hw decoding
* mp_image: add imgfmt_name to mp_image_params
* meson: remove main function from libmpv build
* osxbundle: activate Game Mode with App bundle
* mac/menu: add explicit menu type instead of an inferred type
* mac/menu: make menu creation recursive to allow nested submenus
* mac/menu: move conditional Bundle menu items into config
* mac/menu: keep track of menu items with dynamic actions
* mac/menu: merge file and url config properties
* mac/menu: properly guard playlist array access
* mac/menu: attach menu config to menu item for direct access
* mac/menu: replace app.command usage with event.command
* mac/menu: fix touch bar menu item
* mac/menu: rename Preferences to Settings for consistency with macOS
* mac/menu: remove duplicate key assignment Undo/Zoom
* mac/menu: optimise loading files function
* mac/menu: replace deprecated openFile() usage
* mac/menu: remove unnecessary alert config fields and alert
* mac/menu: rewrite menu bar in swift
* mac/app: remove unused function
* github/workflows: generate html and pdf in docs job as well
* DOCS/man/input.rst: fix incorrect syntax
* mac/vulkan: directly retrieve current render size without caching
* mac/vulkan: workaround for MoltenVK problem that causes flicker
* github/workflows: update actions/upload-artifact to v4
* ad_spdif: handle deprecated FF_PROFILE_* definitions
* wayland_common: fix pointer serial conflict
* video/filter: add field order support for built in deinterlacers
* f_auto_filters: pass field parity to lavfi bwdif deinterlacers
* options: add --deinterlace-field-parity option
* wayland: fix missing lround in cursor surface
* wayland: guess the first hidpi frame better
* Revert "player: reset av state on speed changes"
* player/video: subtract frame_time from delay when ao_chain starts audio
* player/audio: also adjust apts by audio speed in audio_start_ao
* test/test_utils: add mp_msg_set_max_level stub
* ci/mingw: update dependency versions
* ci/mingw: add dav1d decoder
* ci/mingw: enable nvdec
* demux_lavf: always find stream info for avif files
* vo_gpu_next: render subtitles at video colorspace
* sub: add flag if sub_bitmap should be rendered in video color space
* DOCS/options: fix Vulkan typo
* vo_gpu: add missing PL_COLOR_TRC_ST428 case in lcms
* wayland_common: toplevel resize fixes
* w32_common: make dragging asynchronous
* w32_common: re-add fullscreen check when start dragging
* input: centralize VO dragging
* wayland_common: implement VOCTRL_BEGIN_DRAGGING
* w32_common: implement VOCTRL_BEGIN_DRAGGING
* x11_common: implement VOCTRL_BEGIN_DRAGGING
* command: add begin-vo-dragging command
* Revert "player: add ao-volume option, to set the system volume at startup"
* sd_ass: fix use-after-free in ft->event_format
* wayland_common: fix type of dnd_action
* wayland_common: fix initialization order issue with protocols
* wayland_common: fix DND read error handling
* wayland_common: read DND data in larger chunks
* wayland_common: log if DND fails
* wayland_common: free DND resources on shutdown and error
* cocoa-cb: render on main queue instead of dedicated queue
* mac/vulkan: set NSView as layer delegate like recommended by MoltenVK
* osxbundle: fix bundling when homebrew is not installed
* mac/vulkan: remove old deprecated VK_MVK_macos_surface extension remains
* various: avoid function pointer casts
* misc/jni: reduce duplication in mapping struct
* misc/jni: introduce macros for deleting references
* misc/jni: general code cleanup and refactor
* ao_audiotrack: refactor JNI class retrieval
* ao_audiotrack: remove two dead variables
* ao_audiotrack: fix missing check for passthrough support
* osdep/mac: make mac naming of files, folders and function consistent
* wayland: drop some unneeded curly braces (no-op)
* wayland: drop buffer scale for cursor as well
* wayland: rename configured to geometry_configured (no-op)
* wayland: fix check for set_surface_scaling
* sd_ass: don't wrongly recognize \pos as \p
* build: fix build when disabling cocoa-cb
* mac: remove unnecessary metal layer colour space update
* mac: set layer content scale on init
* cocoa-cb: remove pre-allocation and initialise only when used
* console.lua: fix blurry cursor when --osd-blur is set
* stats.lua: fix blurry graphs when --osd-blur is set
* DOCS/options: clarify --sub-blur and --osd-blur options
* vo_gpu_next: simplify pl_clear_mode enum mapping
* ci: clone repos with shallow submodules
* vo_gpu_next: add --border-background option
* vo_gpu_next: support --background option
* vo_gpu: pre-multiply alpha when dealing with background colors
* vo_gpu/vo_gpu_next: rework --alpha into --background option
* player: rename --background to --background-color
* vo_gpu/vo_gpu_next: set ctx->opts.want_alpha in specific functions
* hwdec/dmabuf_interop: reduce magic constant use
* hwdec/dmabuf_interop_gl: migrate to EXT_EGL_image_storage on desktop GL
* hwdec/dmabuf_interop_gl: refactor texture creation
* hwdec/dmabuf_interop_gl: restyle macros to fit line length
* video: don't define IMGFMT_VULKAN conditionally
* osd_libass: update the OSD bar's dent and border size
* DOCS/options: make --scale documentation more consistent
* wayland: remove old sway/wlroots hack
* player/audio: remove misleading comment about delay
* player: reset av state on speed changes
* player: remove speed adjustment from playing_audio_pts
* ci: add explicit build test for ffmpeg 4.4
* DOCS: move ALSA option documentation to ao.rst
* DOCS/options: clarify the impact of --audio-buffer
* DOCS/options: remove lavrresample reference
* DOCS/options: remove --alsa-device
* DOCS/ao: update SDL ao version reference
* vo_gpu_next: fix win32 io wrap
* player/main: don't set the main thread name
* Revert "ci/mingw: pin Vulkan version again"
* DOCS: add `insert` commands and args to interface-changes
* input/player: add loadfile/loadlist insert-at command
* player: change insert_next to insert_at
* input: add insert-next support for drag-and-drop
* player: add loadlist insert-next commands
* player: add loadfile insert-next commands
* DOCS/man: remove outdated softvol entry
* player: add ao-volume option, to set the system volume at startup
* ao: don't clip floating point formats at non-unity gain
* osdep/io: add mp_unlink()
* sub: fix LRC lines with multiple timestamps
* ci: add OpenBSD
* ci: fix typing in lint-commit-msg.py
* image_writer: cleanup leftover files if image writing fails
* player: set hidpi-window-scale to no by default
* DOCS/options: clarify hidpi-window-scale
* player/command: handle runtime toggling of hidpi-window-scale
* win32: clean up hidpi window scale behavior
* x11: clean up hidpi-window-scale behavior
* vo_gpu: use fbo texture height for fragment coordinate calculation
* test: add missing libplacebo dependency
* github/workflows: add macOS 14 arm runner with most recent xcode
* github/workflows: add vulkan, mujs and urchadet to macOS dependencies
* github/workflows: link macOS artifacts in comments
* github/workflows: bundle macOS App and upload it as artifact
* mac: code consistency changes
* osxbundle: use dylib script directly instead of in a subprocess
* osxbundle: add homebrew vulkan loader location to search path
* osxbundle: resolve loader_path on rpath retrieval
* osxbundle: remove unused import
* osxbundle: fix syntax warning with python 3.12
* meson: add custom target for macOS App bundling
* ao_wasapi: scale queried AO volume to (0, 100)
* ao_wasapi: address premature buffer fills in exclusive mode
* player: fix watch later config comments when ignoring path
* player/loadfile: rewrite sub autoselection logic
* github/workflows: update cross-platform-actions to v0.23.0
* command: fix sub-seek while paused without a video
* command: don't add SUB_SEEK_OFFSET twice with sub-seek
* options/path: move path utility functions to misc/path_utils
* osdep/io: move I/O utility functions to misc/io_utils
* osdep/io: ignore 'x' mode for mp_fopen
* vo_gpu: fix fragment coordinate calculation when dithering
* vo_gpu: fix fragment coordinate calculation when drawing checkerboard
* x11_common: handle window dragging in ButtonPress event
* various: make mentions of macOS consistent
* DOCS: make mentions of macOS consistent
* DOCS/man: document Ctrl+WHEEL_UP/WHEEL_DOWN keybinds
* input.conf: bind Ctrl+WHEEL_UP/DOWN to video-zoom
* DOCS/mpv: update ancient profiles config example
* osxbundle: add optional source path argument
* osxbundle: remove old version retrieval fallback
* osxbundle: bundle vulkan driver and layers
* vo: make libmpv last in the auto-probing order for cocoa-cb only
* encode_lavc: don't use deprecated `avcodec_close`
* af_lavcac3enc: don't use deprecated `avcodec_close`
* wayland_common: update pointer serial on pointer_enter
* cocoa-cb: lock CGLContext on uninit and manual redraw
* github/workflows: switch back to luajit for macos
* vo_gpu_next: fix some lut-related memory leaks
* vo_gpu_next: move gpu-next opts to specific sub option
* vo: remove VOCTRL_SET_EQUALIZER and simplify into UPDATE_VIDEO
* wayland_common: drop shape device check when spawning cursor
* wayland_common: properly determine has_keyboard_input
* wayland_common: handle scroll accumulation for each seat
* wayland_common: handle keyboard state per seat
* wayland_common: set cursor visibility for all seats for voctrl
* wayland_common: handle removal of seats
* wayland_common: prevent cursor_seat stale reference
* wayland_common: handle cursor_shape_device per seat
* wayland_common: drop unnecessary xdg_toplevel null check
* wayland_common: implement multi-seat support
* wayland_common: indentation nit
* vulkan/context_win: make --alpha work and runtime changeable
* opengl/context_win: make --alpha runtime changeable
* d3d11: make --alpha runtime changeable
* opengl/context_win: make --alpha=yes work
* d3d11: set window to transparent if --alpha=yes is specified
* w32_common: add function to control window transparency state
* command: add window-id to MPV_EVENT_VIDEO_RECONFIG property change
* DOCS/man: add description of display-names property for wayland
* vo_gpu_next: don't add 0 width/height sub bitmaps to pl_overlay
* osdep/threads-posix: fix headers for OpenBSD build
* DOCS: document --input-preprocess-wheel option
* input: add --input-preprocess-wheel option
* DOCS/lua: clarify `repeatable` and `complex` for `add_key_binding`
* m_option: fix memory leak in parse_obj_settings_list
* demux_mkv: don't return null bstr with size specified
* demux_mkv: error if needed compression settings were not found
* demux_mkv: fix memory leak on invalid blocks
* ao_pipewire: add support for SPDIF formats
* ao_pipewire: don't interpret unknown formats
* DOCS/options: mention that sub-clear-on-seek can now break things
* player/sub: attempt to detect animated subtitles
* vo_gpu_next: move the frame->redraw check for blended subtitles
* player/sub: avoid wasteful subtitle redraws
* dec_sub: expand sub packet caching
* vo: ensure that frames are not eaten on reconfig
* Reapply "video: remove another redundant wakeup"
* Revert "vo: remove frame timing check from vo_still_displaying()"
* ci/lint: add Reapply to the no prefix whitelist
* mac/remote: simplify cover retrieval
* mac/remote: remove unnecessary nowPlayingInfo variable
* mac/remote: add album and artist info
* mac/remote: add seek support
* mac/remote: add chapter title info
* mac/remote: add media-title info
* mac/remote: add playback rate info
* mac/remote: add duration and current position info
* mac/remote: remove make current observer when stopped
* mac/remote: replace command handler with generic handler function config
* mac/remote: simplify repeatable key logic
* mac/remote: move configs to initialiser for new MediaPlayer shorthands
* mac/remote: move class local struct and enum definition to extension
* mac/remote: use explicit struct instead of generic array for configs
* DOCS/man: more words about --teletext-page
* sub: allow setting lavc txt_page special values via teletext_page
* ci/mingw: pin Vulkan version again
* x11_common: fix Xft.dpi detection ignoring --hidpi-window-scale
* README: mention libplacebo subproject integration
* meson: set default options for libplacebo if using subproject
* osdep: fix infinite loop when cancelling subprocess
* various: replace dead links in comments
* wayland: don't press keys again when releasing modifiers
* demux: clarify the meaning of still_image
* hwdec_drmprime: check for AV_PIX_FMT_P210 before using it
* demux_mkv: add tags for A_MPEG/L1(mp1) audio
* js: complex key-binding: send also key_text
* wayland: set current_output on surface leave if applicable
* demux_mkv: set only image flag and ignore still_image
* demux_mkv: increase probing size for still image
* sd_lavc: support secondary subs properly
* console.lua: move functions to strip common characters
* f_output_chain: prevent double free of child filters
* stats.lua: use deinterlace-active property instead
* player/command: add deinterlace-active property
* player: add an auto option to deinterlace
* vo_vdpau: cosmetic changes to timings
* ao_sndio: add missing config.h include
* github/workflows: ignore more files from build workflow
* demux_mf: detect webp
* Revert "demux: put type2format into codec_tags with helper functions"
* player: remove all rpi-specific code
* audio: rename ao_read_data_unlocked
* player: ensure runtime updates of certain rendering options
* github/workflows: revert to github-script@v6
* vo_vdpau: fix timing for nanoseconds
* command: add load-input-conf
* input: make parse_config_file return bool
* input: remove unused parameter from parse_config_file
* command: add load-config-file
* wayland_common: warn if scrolling will be broken
* wayland_common: add touch listener boilerplate
* wayland_common: prefer axis_value120 if supported
* wayland_common: properly handle high resolution scrolling
* DOCS/mpv: document how mf:// URLs are formed
* demux_mf: explain why a printf format is unsupported
* demux_mf: remove code repetition
* x11_common: support --title-bar
* demux_mkv: detect images by reading blocks and timecodes
* Revert "demux_mkv: check if the video codec is an image"
* wayland: look for "default" cursor as well as "left_ptr"
* meson: bump libplacebo required version to 6.338.2
* io: add mp_save_file
* vo_gpu_next: save cache to separate files
* stream: increase max_size to INT_MAX minus padding
* hwdec_drmprime: add P010 and P210 support
* hwdec_aimagereader: handle lack of JNI gracefully
* common: don't force terminal log buffer to small size
* version.h.in: bump copyright year
* vo: change vo_frame duration to double
* vo_dmabuf_wayland: scale smarter in hidpi situations
* wayland: don't rescale dimensions if hidpi-window-scale is disabled
* wayland: drop buffer_scale use for viewporter
* vo: ensure a dropped frame is always freed
* all: add missing repr assignments
* github/workflows: update actions package versions
* osdep/timer: update documentation and test for mp_time_ns
* options/m_option: suppress warning about validate function call
* ad_spdif: fix DTS 44.1khz passthrough playback
* player/command: don't reselect demux stream on only UPDATE_OSD
* player/video: force vo reconfigure on color parameters change
* f_lavfi: use libplacebo utils instead of mp_csp_*
* vo_gpu_next: simplify after recent changes
* csputils: replace more primitives with pl_
* csputils: replace mp_chroma_location with pl_chroma_location
* csputils: replace mp_alpha_type with pl_alpha_mode
* csputils: replace mp_colorspace with pl_color_space
* command: do a normal seek instead of a refresh seek when switching vo
* f_auto_filters: use bwdif_cuda for deinterlacing with cuda hwdec
* osdep/io: expand path before LoadLibrary
* osc: add osc-windowcontrols_title option
* Revert "player/video: loosen logic checks for adjust_sync"
* bash-completion: parse the mpv options lazily
* f_auto_filters: change fallback deinterlace to bwdif
* sub: add `--sub-lavc-o` option
* win32: stop waiting for messages if the window is destroyed
* msg: reset status_lines when setting --really-quiet
* player: remove --term-remaining-playtime option
* command: restore lang after track reload
* command: minor m_property_strdup_ro style changes
* stats.lua: display the current GPU context
* command: export current-gpu-context property
* player/command: reselect track after UPDATE_SUB_HARD
* chmap: mp_image_pool: drop stale mentions of Libav in comments
* common: stream: don't mention Libav in errors/warnings
* TOOLS/autocrop.lua: drop Libav mention
* DOCS/*: remove mentions of Libav
* console.lua: highlight the selected suggestion in the terminal
* libplacebo: fix out-of-bounds read with --really-quiet
* scripting: don't observe properties with type nil
* osc: don't autohide mouse cursor when hovering over windowcontrols title
* TOOLS/lua/autoload: skip loading when playback is aborted
* DOCS: reorder --volume-max documentation to where --volume is
* DOCS: add documentation for --volume-gain options
* command: add osd display for volume-gain
* audio: add --volume-gain options to control volume in decibels
* sub: fix sub-seek and sub-step -1 with unknown duration subs
* demux_lavf: detect ico as images
* wayland_common: guard against negative configure sizes
* command: fix bitrate unit capitalization
* stats.lua: make capitalization consistent across pages
* win32: change to alphanumeric mode on the first keypress
* win32: default to alphanumeric input when the IME is first initialized
* win32: move IME candidate window to video window
* win32: handle WM_UNICHAR
* win32: re-enable IME
* filter_sdh: optimize get_char_bytes
* terminal: don't print escape sequence if not tty
* terminal-unix: don't install handler before pipe
* terminal-unix: move all processing out of sighandler
* console.lua: style log lines in the terminal
* terminal-unix: don't set `SA_RESETHAND` for SIGTERM/SIGQUIT
* Revert "github/workflows: don't install angleproject on msys2"
* github/workflows: disable MSYS 32-bit builds
* wayland: accept active modifiers even if they aren't physically held
* wayland: don't ignore key modifiers if they were consumed
* DOCS/mpv: the playback position is not remembered after poweroff
* player: add forced choice to subs-with-matching-audio
* scripting: add mp.input
* filter_sdh: fix incorrect placement of null terminator
* filter_sdh: sanitize get_char_bytes heuristic to avoid overflow
* ao_null: fix reset() implementation
* github/workflows: don't install angleproject on msys2
* demux_lavf: remove `fix_editlists` hack for mp4
* f_lavfi: provide color_space and color_range params for lavfi
* x11_common: prefer Xft.dpi for HiDPI scaling
* x11_common: allow DPI scale in unit of 0.5
* msg: return zero length if bstr_split_utf8 fails
* vo_gpu_next: respect d3d11 swapchain output format preference
* README: specify the meaning of "not too ancient Linux"
* README: recommend --profile=fast for crappy GPUs
* DOCS/options: note that --geometry doesn't fully work on wayland
* console.lua: expand ~/ in file completion
* msg: improve term_disp_width to support unicode
* ci/build-freebsd: use march=native for QEMU hosted build
* player/video: set video_out to NULL before broadcasting events
* command: allow changing --gpu-api and --gpu-context at runtime
* DOCS/ao: change wrong note on which driver is preferred
* console.lua: hide the cursor when unfocused
* console.lua: don't reinsert completion_append after cycling
* DOCS/man: remove "Linux desktop issues" section
* vo_sdl: support the focused property
* DOCS/man: use the correct directive type for "Warning" admonitions
* win32: add support for --input-cursor-passthrough option
* screenshot: remove artificial limit on the number of screenshots taken
* DOCS/options: fix documentation for --force-window window size
* various: use correct PATH_MAX for win32
* osdep: clarify and rename a constant on win32
* various: fix capitalization of 'GitHub'
* msg: reduce nesting in mp_msg_flush_status_line
* msg: keep status line on the end of file
* console.lua: refactor find_common_prefix
* mac: add support for --input-cursor-passthrough option
* DOCS/options: fix --image-display-duration's documentation
* DOCS/interface-changes: add --secondary-sub-ass-override
* common/av_log: do not assume AVClass.item_name is always set
* mac: add support for --auto-window-resize option
* mac: update geometry/autofit opts on runtime
* win32: opt in to the windows segment heap
* win32: support long file paths
* osc: allow disabling special mouse wheel behavior
* terminal-unix: enable the cursor after ctrl+z
* options: add --secondary-sub-ass-override
* lua: don't return a second value from successful format_json
* command: support passing scale to `keypress`
* input: add value argument for mp_input_put_key_artificial
* OSC: fix indentation and stray whitepace
* sd_ass: remove unneeded ontop variable
* player: refactor secondary subtitle options and properties
* DOCS/options: fix documentation for replaygain-clip
* demux_mkv: add HDMV Text subtitles to subtitle codec list
* demux_mkv: check that subtitle type is set before accessing it
* hwdec_drmprime: try and declare support for weird forked ffmpeg formats
* hwtransfer: actually treat hardware formats as supported input formats
* w32_common: remove executable bit from file
* mac: add support for drag-and-drop option
* console.lua: clear the suggestions when you move the cursor
* console.lua: complete current-tracks sub-properties
* console.lua: implement case-insensitive completion
* mac: add support for window-id property
* demux/codec_tags: add jxl/jpegxl extension mapping to image codecs
* options: add --secondary-sub-pos
* Revert "OSC: Remove merriment"
* OSC: Remove merriment
* playlist: correctly populate playlist-path with the --playlist option
* github/issue_template: unify spellings
* github/issue_template: request uploading attachments to github
* github/issue_template: unify requested information across templates
* sub: don't busy loop if the player is paused for cache
* etc/mpv.desktop: add audio/vnd.wave and video/vnd.avi
* w32_common: rename some camelCase struct member names to snake_case
* win32: temporarily disable aero shake while dragging hack is active
* win32: stop fullscreen window from moving while dragging hack is active
* x11_common: fix compose key handling
* filter_sdh: add full width parentheses to the enclosures string
* filter_sdh: add --sub-filter-sdh-enclosures option
* filter_sdh: combine skip_bracketed and skip_parenthesized
* player/command: make new overlay-add arguments actually optional
* player/command: add ability to scale overlay
* console.lua: cycle through completions
* console: automatically determine the font_hw_ratio
* DOCS/interface-changes: document renaming of MP_KEY_BACK
* win32: properly handle WM_XBUTTONUP and WM_XBUTTONDOWN
* input: add missing forward media key
* console.lua: simplify the condition to print to the terminal
* m_option: respect pathlist seperator when printing
* mpv.desktop: add keywords
* image_writer: default to lossless AVIF screenshots
* image_writer: add missing mp_image_params in convert_image
* image_writer: print screenshot format in verbose log
* image_writer: use common format selection for AVIF screenshots
* Revert "github/workflows: install xxhash on msys2"
* Revert "ci/mingw: use vulkan-loader v1.3.266"
* meson: use subprocess-dummy.c fallback when fork func doesn't exist
* ao_wasapi: clean GUID definitions
* ao_wasapi: fix MP3 GUID
* input: fix double click handling
* mac: report modifier keys on precise scrolling
* mac: fix initial window size and position when already maximized
* github/workflows: install xxhash on msys2
* playloop: use a 16:9 ratio with --force-window
* ci: remove dvbin from freebsd run
* meson: enable dvbin by default again
* meson: fix check for dvbin availability
* ci/tumbleweed: don't enable shaderc
* build: only directly link shaderc and spirv-cross on windows
* vo_gpu: fix ra_fbo stack-use-after-scope
* common/av_log: use bstr for log callback
* vo_kitty: init all fields of struct sigaction before using it
* ra_pl: add missing initializer
* ao_sndio: remove duplicated condition
* vo: don't pass VADRMPRIMESurfaceDescriptor by value
* wayland: simplify reading data
* mp_image: remove local params copy from mp_image_setfmt
* ta: inline OOM checks
* player/command: don't pass mp_image_params by value
* vo_gpu: don't pass gl_user_shader_hook by value
* vo_gpu: don't pass mp_pass_perf by value
* vo_gpu: don't pass ra_fbo by value
* Reapply "osdep/meson: add libplacebo include dir to swift compile"
* Revert "osdep/meson: add libplacebo include dir to swift compile"
* ci: remove leftover libplacebo subproject options
* meson: move mpv.com target after mpv.exe to avoid meson version warning
* ci/msys2: remove libplacebo.wrap
* ci: update mpv.com path again
* meson: generate .com in the same place as the .exe if possible
* DOCS/options: clarify --spirv-compiler
* build: restrict git describe to top level source directory
* options: add --osd-bar-border-size
* DOCS/mpv: quotes in mpv.conf don't escape backslash
* options: add secondary-sub-delay
* vaapi: bump vaapi info callback to verbose messages
* vaapi: add missing NULL check
* DOCS/options: remove the mention of cocoa and its removed backend
* mac: fix a race condition when updating the window title
* mac: fix libmpv usage without embedding
* mac: cleanup some unused and unneeded code
* osdep/io: add PRINTF_ATTRIBUTE for printf overrides
* meson: add missing _GNU_SOURCE in check
* meson: adjust win32 defines
* meson: don't define __USE_MINGW_ANSI_STDIO
* sdl_gamepad: add version check for SDL_HINT_JOYSTICK_THREAD
* ci/build-macos: enable Werror to catch issues quicker
* osdep/macosx: add default switch cases to suppress Wswitch
* ao_coreaudio_chmap: suppress vla warning
* various: replace some OOM handling
* ao/coreaudio_exclusive: fix segfault when changing formats
* meson: also expose present_sync for VT-only after a96d04f19d73
* player: remove shared-script-properties property
* vo: add params mutex
* vaapi: add support for vaapi-win32
* vaapi: pass module into create()
* d3d11: expose mp_get_dxgi_adapter and mp_dxgi_validate_adapter
* d3d11: rename d3d11 adapter to DXGI adapter
* Update VERSION
* Release 0.37.0
* vo_gpu_next: reduce number of requested frames from VO
* mac: title bar fix 1px none covered video at top
* mac: add rotation menubar entries
* mac: fix reporting of left wheel and right wheel scrolling
* command: add missing null check to event handler
* DOCS/options: admonish users for touching --3dlut-size
* vo_gpu_next: bump ICC cache size limit to 20 MB
* DOCS/options: reword cache options
* vo_gpu_next: don't re-save unmodified cache
* vo_gpu_next: dramatically simplify cache code
* vo_direct3d: remove redundant condition
* opengl/context: remove duplicated conditions
* ra_d3d11: fix off by one check
* vo: add missing return variable assignment
* win32: don't jump over variable init with goto
* various: add some missing error checks
* demux: add missing NULL check
* common/msg: remove redundant check
* ao_wasapi: add missing comma in strings array
* vo_gpu_next: disable drift compensation for screenshots
* vo_gpu_next: add validation for invalid pl_queue usage
* vo_gpu_next: set frame duration if provided by VO
* vo_gpu_next: interpolate only if display_synced or a still frame
* vo_gpu_next: request more frames to account for anti aliasing
* vo_gpu_next: make the first frame check less ominous
* vo_gpu_next: remove incorrect interpolation disabling
* vo_gpu_next: fix pl_queue refill on reset
* vo: pass approximate frame duration in vo_frame
* vo: avoid overshooting the expected end of the frame during pause
* player/video: account for repeats in ideal_frame_vsync_duration
* vo_sdl: fix broken mouse wheel multiplier
* DOCS: properly document --force-window-position for sdl vo
* loadfile: remove some dead code
* hwdec_vulkan: use VK_NULL_HANDLE when counting the number of images
* test: update ffmpeg format refs
* vo_gpu_next: set max cache size back down to 10 MiB
* hwdec: support videotoolbox with libplacebo
* osxbundle: sign bundle with ad-hoc pseudo identity
* osxbundle: remove mpv-bundle symlink to allow code signing
* osxbundle: resolve relative linked dependency paths
* zsh-completion: complete options after --help
* command: notify media-title on force-media-title change
* audio: fix UB when casting INFINITY to integer
* vo: delay vsync samples by at least 10 refreshes
* player: don't remove all selected sub tracks in mp_dselect_track
* stats.lua: fix incorrect storage aspect ratio value
* command: export storage aspect ratio (sar) properties
* vo_gpu_next: guard from cache save conflict
* demux_playlist: simplify ini parsing
* DOCS/options: update watch-later-options docs
* options: add more properties to default watch-later-options
* options: remove not relevant props from default watch-later-options
* vo_gpu_next: disable libplacebo drift_compensation
* player/video: fix calculation of ideal_frame_vsync_duration
* m_option: remove leftovers of del action
* vo_gpu_next: update overlays for blend subtitles on frame redraws
* DOCS/options: osd-shadow is ignored with osd-back-color
* demux: always update the cache on init
* vo_gpu_next: fix interpolation
* vo: add frame vsync and vsync duration
* vo_gpu_next: improve PTS clamping
* vo_gpu_next: add some additional sanity checking for interpolation
* wayland: fix shift+tab keyboard input
* console: fix crash for long suggestion strings
* osdep/w32_keyboard: remove duplicated MP_KEY_BACK mapping
* wayland: obey initial size hints set by the compositor
* cocoa: remove OpenGL cocoa backend
* mac: change display name retrieval to localizedName NSScreen property
* mac: fix build on older swift versions
* TOOLS/macos-sdk-version: remove legacy sdk version retrieval
* vo_gpu_next: overwrite cache files atomically
* osdep/io: implement rename() wrapper
* vo_gpu_next: refactor cache saving code
* DOSC/input: clarify a couple of commands where no-osd has no effect
* player/command: make show-progress work regardless of osd prefix
* vo: don't sleep 1ms always when requested time is in the past
* vo: replace some magic numbers with timer macros
* demux/lavf: don't use deprecated side data
* editorconfig: add max line
* mac: remove runtime checks and compatibility for macOS older than 10.15
* meson: remove several macos-10-* build options
* player/loadfile: remove blank line on exit
* msg: ensure status line is always visible
* msg: factor out print code
* msg: convert dump_stats to bstr
* msg: use bstr for partial msg
* msg: check isatty separately per each stream
* Revert "player: cut off status line on terminal width"
* Revert "player: don't print status line again when quitting"
* msg: refactor how terminal messages are printed
* stats.lua: disable ASS formatting when printing to terminal
* msg: don't mix partial log messages, with unrelated log levels
* vo: replace VOCTRL_HDR_METADATA with direct VO params read
* audio: avoid unnecessary silence padding in read_buffer()
* ao_audiotrack: switch to ao_read_data_nonblocking()
* ao_coreaudio: switch to ao_read_data_nonblocking()
* ao_pipewire: switch to ao_read_data_nonblocking()
* audio: introduce ao_read_data_nonblocking()
* threads-win32: add comment about local decl of a function
* threads-win32: support UWP in mp_thread_set_name
* meson: add missing source file for UWP
* osdep/threads-posix: use CLOCK_MONOTONIC if supported
* osdep/timer-linux: check clock availability on init
* DOCS/option: discourage the use of video-latency-hacks a bit more
* vo_gpu_next: add --target-gamut option
* stats.lua: remove unused variable
* console.lua: don't print the console log to the OSD when switching VO
* player/command: handle force window on runtime vo changes
* stats: don't overwrite color and alpha of `osd-back-color`
* console: don't overwrite color and alpha of `osd-back-color`
* sub: add --sub-stretch-durations option
* player/command: fix typo in sig-peak value computation
* win32: fix hit test using client rc instead window
* vo_gpu: apply ICC profile and dithering only to window screenshots
* vo_gpu_next: drop alpha channel from screenshots if unneeded
* image_writer: improve format conversion logging
* console: wrap rows at the top
* console: optimize table generation
* console: enable completions without a prefix
* console.lua: complete raw properties
* console: avoid redundant completion appendage
* present_sync: remove unneeded clear_values function
* vo: require successive vsyncs to be more than swapchain depth
* present_sync: only save as many entries as the swapchain depth
* vo: replace max swapchain depth magic number
* DOCS/mpv: consistent formatting of keybindings
* DOCS/console: correct capitalization of keybindings
* wayland: improve wl_output guessing before mpv window is mapped
* sub: adjust offsets when sub seeking/stepping
* DOCS/input: stop documenting vf del
* dec_sub: always copy packet for new segments
* drm: use present_sync mechanism for presentation feedback
* present_sync: rename function to present_sync_update_values
* present_sync: rewrite around linked list
* ytdl_hook: fix mixed thumbnail.preference availability
* Revert "vo: clear vsync_offset if drawing while paused"
* video: reset `display_sync_error` when resetting state
* threads: unbreak mpv on builds without asserts
* player/command: add video-params and siblings to MPV_EVENT_TICK
* ALL: use pl_hdr_metadata and nuke sig_peak
* demux_mkv: parse mastering metadata
* player/command: remove hdr-metadata property
* csputils: add pl_hdr_metadata to mp_colorspace and deprecate sig_peak
* player/command: use pl_hdr_metadata_contains
* csputils: change mp_hdr_metadata to pl_hdr_metadata
* timer: remove unnecesary time conversions
* win32/pthread: remove unused code
* timer: remove unused code
* threads: remove unused code
* threads: rename threads.c to threads-posix.c
* threads: move pthread debug to threads-posix.h
* mp_thread: add win32 implementation
* mp_thread: prefer tracking threads with id
* ALL: use new mp_thread abstraction
* threads: add new mp_thread abstraction
* sub: redecode cached packets on UPDATE_SUB_HARD or UPDATE_SUB_FILT
* options: add UPDATE_SUB_HARD flag to sub-ass-override
* vo_gpu_next: update to newer cache API
* ra_pl: drop deprecated cached_program param
* vo_gpu_next: remove unneeded PL_API_VER guarding and defines
* mp_image: pass rotation correctly to/from AVFrame
* win32: add more values for monitor refresh rate detection
* DOCS/man/console: update type examples
* lua: remove a ton of unneeded parentheses
* console.lua: complete file paths
* console.lua: complete list option verbs
* console.lua: inline mp.options
* console.lua: complete list options
* console.lua: complete profiles
* console.lua: complete commands after help
* console: complete infinite cycle-values arguments
* m_option: don't try to remove all filter matches
* player/main: set main thread name as mpv
* vo_gpu_next: use pl_queue_params() macro
* vf_vapoursynth: set crop metadata after mapping vapoursynth frame
* player/video: loosen logic checks for adjust_sync
* player/video: don't reset ao on video chain reinit
* demux: make hysteresis-secs respect cache-secs
* demux: cosmetics
* m_option: drop support for -del for list options
* m_option: remove all matches when using -remove
* options: make --screenshot-directory/--watch-later-directory aliases
* ytdl_hook: reverse thumbnail order
* ytdl_hook: support the preference field of thumbnails
* ytdl_hook: add thumbnail option
* ytdl_hook: support thumbnails
* various: remove trailing whitespace
* ao_coreaudio: signal buffer underruns
* meson: do the macos sdk version comparison in meson
* Revert "meson: import python module"
* meson: import python module
* TOOLS/{file2string,matroska}: drop unneeded stdout output
* timer-linux: fallback to CLOCK_MONOTONIC instead of timespec_get
* scripting: add 'script' to messages
* scripting: rename backend names for concise naming
* mp_threads: rename threads for consistent naming across all of them
* TOOLS/macos-sdk-version: use packaging instead of distutils for version
* timer: remove MP_START_TIME
* player/lua: use mp_msg_find_level in check_loglevel
* msg: make mp_msg_find_level case insensitive
* DOCS/options: clarify `no-config` is a command line flag
* player/audio: fix incorrect check on adding delay
* semaphore_osx: change mp_sem_timedwait to mp_time
* semaphore_osx: don't overwrite global symbols
* Revert "hwdec_vulkan: account for vulkan frames now using presentation size"
* javascript: use --js-memory-report option instead of MPV_LEAK_REPORT
* test: unbreak build when win32-internal-pthreads is disabled
* timer: use MP_TIME macros
* osdep/timer-win2: rename to timer-win32
* ci/msys2: create a wrap file for libplacebo
* meson: remove libplacebo wrap
* options: rename --play-dir to --play-direction
* options: rename --watch-later-directory to --watch-later-dir
* options: rename --screenshot-directory to --screenshot-dir
* options: rename --sub-ass-force-style to --sub-ass-style-overrides
* options: rename --override-display-fps to --display-fps-override
* options: rename --fps to --container-fps-override
* player: don't calculate av delay if there's no audio or video
* console.lua: complete choice and flag options
* console.lua: remove unused capture from completion patterns
* console.lua: use string.match()
* console.lua: generate completion lists lazily
* console.lua: remove repetition from build_completers()
* console.lua: remove unnecessary copy
* github/workflows: use ubuntu-latest host for freebsd
* options: disable --allow-delayed-peak-detect by default
* osdep: fix clang warnings with `_FORTIFY_SOURCE`
* github/workflows: use macos-13 host for freebsd
* README: bump macOS version as a consequence of libplacebo version bump
* README: add libplacebo to dependencies and mention wrap
* Revert "audio: don't block on lock in ao_read_data"
* osdep/meson: add libplacebo include dir to swift compile
* test/meson: add missing libplacebo dep
* sub: update subtitles if current track is an image
* demux_mkv: check if the video codec is an image
* demux: put type2format into codec_tags with helper functions
* ci/freebsd: disable iconv
* github/workflows: use cross-platform-actions for freebsd
* ci: disable Werror for libplacebo subproject build
* ci/msys2: disable autocrlf
* gitignore: update for meson wraps
* m_option: initialize m_option_value union properly
* workflows/build: install git in freebsd image
* meson: make libplacebo a required dependency
* subprojects: add a libplacebo wrap
* workflows/build: explicitly define `CXX` in the env
* .gitignore: ignore subprojects but allow later overriding
* vo: define <= 0 as unsupported for last_queue_display_time
* vo: change spammy log to trace
* vo: average more vsync samples
* d3d11: calc vsync interval on real stats, not just last interval
* img_format: remove duplicated macros
* ta: don't hardcode alignment requirement
* osdep: remove alignof emulation
* aspect: remove unused multiplication
* hwtransfer: handle constraints for hwdec with NULL supported_formats
* DOCS/contribute: increase hard column limit to 100
* stats.lua: disable tonemapping plot by default
* path: don't treat "hidden" files as extension
* ytdl_hook: remove extra playlist insert
* ytdl_hook: parse the separate cookies field
* vf_vapoursynth: set nominal_fps after the filter
* Revert "demux_mkv: PAR should be calculated after applying crop"
* demux_mkv: don't set codec crop rect when there is no crop
* DOCS/contribute: stop pretending that C11 isn't allowed
* meson: remove -D_ISOC99_SOURCE flag
* timer: drop ancient macOS fallback
* win32/pthread: fix calculation error in pthread_cond_timedwait
* dvbin: do a big cleanup on code style and functions
* stream_dvb: avoid static function variable
* dvb_tune: remove use of time()
* dvbin: revise many log lines
* stream_dvb: use talloc
* stream_dvb: fix missing newlines on log messages
* audio: don't block on lock in ao_read_data
* win32/pthread: add support for pthread_mutex_trylock
* threads: add support for pthread_mutex_trylock
* various: sort some standard headers
* various: remove ATOMIC_VAR_INIT
* osdep: remove atomic.h
* osdep: drop atomic fallback
* win32/pthread: try to fix system headers leaking through
* test: add basic tests for timer code
* meson: streamline selection of certain osdep sources
* win32/pthread: implement clock_gettime for high-res timer purposes
* Revert "win32/pthread: don't convert time through unrelated timer"
* mp_image: set crop metadata when converting to AVFrame
* demux_mkv: PAR should be calculated after applying crop
* ci/lint: allow the first word to be all caps
* stats.lua: hide images' FPS
* stream_cdda: deprecate --cdda-toc-bias and always check for offsets
* stream_cdda: remove printing track info in fill_buffer
* stream_cdda: remove fallback for ancient libcdio versions
* vo_gpu_next: optimally align DR buffers
* vd_lavc: align buffers to multiple of image size
* video/mp_image: handle non-power-of-two alignment
* common: add mp_lcm helper
* github/workflows: put a 20 minute timeout on the freebsd job
* thread_tools: suppress -Wstringop-overflow false-positive
* stream_cdda: suppress -Wstrict-prototypes from cdio
* win32: suppress pointer cast warning
* charset_conv: suppress unused-label warning
* vo_gpu_next: cast const away to suppress warning
* d3d11: don't skip last char in buffer
* ci: enable -Werror
* win32: clear background only on first paint
* TOOLS/autocrop.lua: disable hwdec when needed instead using -copy one
* demux/lavf: move tags instead of copying
* common/tags: add mp_tags_move_from_av_dictionary()
* player/command: truncate anything < 1e-4 in pretty printer
* wayland: use ppoll if possible
* poll_wrapper: use the actual correct timeout for ppoll
* DOCS/options: remove obsolete notice
* DOCS/mpv: fix typos in List Options
* DOCS/interface-changes: remove redundant change
* hwtransfer: handle hwcontexts that don't implement frame constraints
* github/workflows: remove macOS 11 build
* timer: remove microsecond timer functions
* test: change test_utils stubs to ns variants
* dither: removed some unused code
* vo: convert some final low-hanging things to nanoseconds
* client: change underlying mpv_wait_event timer to nanoseconds
* dispatch: change mp_dispatch_queue_process timer to nanoseconds
* input: convert autorepeat timing to nanoseconds
* filters: change end time calculation to nanoseconds
* ao: convert all timing code to nanoseconds
* stats: convert timers to nanoseconds
* demux: convert cache updates to nanoseconds
* timer: add convenience time unit conversion macros
* command: unbreak runtime play-dir changes
* stats.lua: remove compatibility aliases of properties
* af_scaletempo2: better defaults
* stats.lua: fix page 2 alignment of "Total"
* vo_gpu/vo_gpu_next: add vulkan support for macOS
* mac: add a window animation lock to wait for animations to finish
* hwdec_dxva2egl: fix log value type
* stats.lua: add chroma-location
* stats.lua: change "Pixel Format" to "Format"
* stats.lua: fix missing newline when print_perfdata_passes is enabled
* stats.lua: sort filter parameters to ensure consistent output
* player/command: change how floating point number are printed
* stats.lua: don't print custom pixel format, when hwdec
* stats.lua: remove leading zeros from pass timings
* stats.lua: add frame info
* stats.lua: simplify fps display
* stats.lua: adjust spacing between values a little
* stats.lua: show HDR meta if not equal to 203
* stats.lua: separate video parameters from video out
* f_decoder_wrapper: change video-codec to show description or name
* command: fix fps property name
* command: early exit in some properties to avoid going through VOCTRL
* m_property: add read_sub_validate to check if should be processed
* vo_gpu_next: only increment osd_sync in update_overlays if paused
* command: fix segfault with playlist-{next,prev}-playlist
* README: update release frequency
* terminal-unix: make stop/cont sighandlers pipe based
* terminal-unix: avoid data race + simplify
* terminal-unix: avoid data-race on do_deactivate_getch2
* drm_common: don't spoil errno in signal handler
* terminal-unix: don't spoil errno in signal handler
* console.lua: print the log and input line to the terminal
* ytdl_hook.lua: set metadata with single tracks
* defaults.lua: add a disabled parameter to timer constructors
* DOCS/options: vdpau requires GLX
* win32: improve window snapping behavior
* osdep/timer-win2: use Waitable Timer for sleeping
* timer: change mp_sleep_us to mp_sleep_ns
* libmpv: add mpv_time_ns()
* vo: use mp_poll wrapper in wait_events when applicable
* osdep: rename polldev to poll_wrapper
* vo: change vo->driver->wait_events to nanoseconds
* vo: use nanoseconds for frame duration and pts
* player: store last_time timestamp in nanoseconds
* vo: remove vo_get_estimated_vsync_interval conversion to seconds
* DOCS/lua: update read_options example
* console.lua: exit with with Ctrl+[
* command: add playlist-next-playlist and playlist-prev-playlist
* ci: add sanitizers to Tumbleweed build
* core: remove duplicate init_{audio,video}_decoder declarations
* core: remove declarations of unused functions
* TOOLS/autocrop.lua: add support for detect_min_ratio
* DOCS/input: document the full sub-property
* console: support utf8 for table formatting
* console: cull lines outside of visible area
* console: show completion suggestions as table
* console: show suggestions for completion
* console: refactor text styles for log levels
* TOOLS/autocrop.lua: simplify code
* player/video: mention --profile=fast and --hwdec in AV desync message
* vo: remove frame timing check from vo_still_displaying()
* Revert "video: remove another redundant wakeup"
* ci/mingw: use vulkan-loader v1.3.266
* mp_image: don't copy crop value from opaque_ref
* demux_playlist: use --metacode-codepage when parsing playlist files
* demux: change the default of metadata-codepage to auto
* demux_cue: deprecate --demuxer-cue-codepage for --metadata-codepage
* charset_conv: remove ancient warning about deprecated syntax
* stream_lavf: use metadata-codepage option for codepage conversion
* af_scaletempo: overlap is a factor not a percentage
* DOCS/mpv: update mpv.conf's documentation
* TOOLS/autocrop.lua: update comment
* sd_ass: enable sub-start and sub-end with unknown duration subs
* vo_gpu_next: improve updating overlays
* vo_dmabuf_wayland: correct full window size calculation
* win32: clear client area to black early
* player: remove unused mutate argument in mp_next_file
* loadfile: fix an old wonky playlist heuristic
* af/vf-command: add ability to target a specific lavfi filter
* vo_dmabuf_wayland: free frame if the visibility check fails
* external_files: remove duplicate from cover art whitelist
* vo_dmabuf_wayland: eliminate an extra frame copy
* TOOLS/lua/autoload: bump the msg-level of some logging
* meson: declare libmpv as a dependency and override it
* win32: adjust WM_NCACTIVATE for better compatibility with window state
* vo_dmabuf_wayland: attach solid buffer when using force window
* codec_tags: map some more image mimetypes
* path: don't override "cache" and "state" paths with configdir
* demux: move parent_stream_info before the goto
* Revert "demux: constify a struct member"
* external_files: base cover-art-whitelist on cover-art-auto-exts
* DOCS/interface-changes: also mention --window-affinity
* DOCS/interface-changes: mention --backdrop-type
* win32: add WS_THICKFRAME style in borderless mode
* vo: fully replace draw_image with draw_frame
* restore-old-bindings.conf: remove unusable bindings
* demux: fix erroneous condition in lazy_stream_needs_wait
* win32: set WS_SYSMENU style always
* DOCS/lua: remove superfluous parameter
* Revert "demux: improve stream selection state"
* msg: use nanosecond precision
* vo: don't invoke wait, when not needed
* vo: increase display refresh rate estimation limit from 99 Hz to 400 Hz
* vo: change vsync base to nanoseconds
* win32/pthread: define _POSIX_TIMERS to notify they are not supported
* win32/pthread: don't convert time through unrelated timer
* meson: don't link pthreads when internal impl is used
* meson: add missing gl-video test dependency
* timer: teach it about nanoseconds
* timer: rename mp_add_timeout to reflect what it actually does
* timer: remove dead code
* timer: simplify mp_time_us_to_realtime
* timer: rename mp_time_us_to_timespec to reflect what it actually does
* ao_audiotrack: convert to nanoseconds
* playloop: make chapter property more accurate when seeking chapters
* vo_dmabuf_wayland: assume counter-clockwise rotations
* hwdec_drmprime: add nv16 support
* audio/chmap: support up to 64 channels
* wasapi: clamp number of output channels to 8
* chmap: add more channel layouts up to 22.2
* audio/chmap: link string buffer size to MP_NUM_CHANNELS
* playloop: don't refresh seek on external sub streams
* demux: improve stream selection state
* Revert "demux: eagerly read subtitle streams when switching tracks while paused"
* demux: eagerly read subtitle streams when switching tracks while paused
* osc: move the idle logo behind other overlays
* meson: don't require swift when checking macos sdk
* command: only warn shared-script-properties once
* wayland: don't double close display fd
* command: deprecate shared-script-properties
* osc: remove shared-script-properties usage
* DOCS/options: update lavfi-complex examples
* console.lua: complete properties after cycle-values
* af_scaletempo2: raise max playback rate to 8.0
* DOCS/options: add example for custom pitch correction filter
* restore-old-bindings.conf: add the old wheel bindings
* DOCS/mpv: update the wheel bindings
* win32: add option to change backdrop style
* recorder: fix a couple of memory leaks
* DOCS/options: update libplacebo-opts documentation URL
* input.conf: make `u` toggle between force and yes
* DOCS/input: update aegisub URL
* osc.lua: fix calculation for slider's min-max average
* win32: pass window handle to the window-id property
* vo_gpu: remove --scaler-lut-size
* vo_gpu: remove --scale-cutoff etc
* DOCS/af: update audio filters section
* github/workflows: rename the job for the docs check
* github/workflows: add a workflow to check doc changes
* github/workflows: only run build if source/build files change
* DOCS/man: remove outdated note about gnome and idle-inhibit
* wayland: remove gnome-specific idle-inhibit warning
- Drop 0001-Revert-meson-bump-required-version-to-0.62.patch (no
longer necessary)
- Build against libplacebo 6.x
- Enable mujs
Version: 0.36.0+git20230923.140d0185-bp156.1.2
* Sat Sep 23 2023 llyyr.public@gmail.com
- Update to version 0.36.0+git20230923.140d0185:
* ci/mingw: drop old workarounds for vulkan-headers
* m_config_core: remove mp_read_option_raw
* cuda: move --cuda-device to cuda_opts group
* opengl/context_win: move opengl-dwmflush to wingl_opts group
* libmpv_gl: replace mp_read_option_raw call
* video/out/gpu: replace mp_read_option_raw call
* stream: remove unneeded mp_read_option_raw call
* options: rename some opt structs to *_opts instead of *_params
* stream_bluray: move --bluray-device to stream_bluray_opts
* stream_cdda: move cdrom-device to cdda_params
* demuxer: remove several mp_read_option_raw calls
* demux: make demux opts public
* options: move some demux-specific opts to demux opts
* demux_lavf: set duration to -1 if unknown
* DOCS/options: remove some stray tabs
* win32: don't remove WS_CAPTION from style
* win32: enable custom WM_NCHITTEST also when title bar is hidden
* win32: set window_corners to default for fullscreen
* win32: add --window-corners
* win32: fix fit_window_on_screen to account for invisible borders
* win32: reduce top border thickness to imitate DWM invisible borders
* win32: add an option to control window title bar state
* win32: add an option to change window affinity
* wayland: ensure at least a scale factor of 1 when drawing cursor
* github/workflows: comment PR artifacts links
* win32: explicitly guard dark mode calls by Windows version
* vo_gpu_next: use proper color for subtitles
* {github/workflows,ci}: install and enable libplacebo in macOS CI
* github/workflows: add macOS 13 build
* vo_gpu: don't override scaler options with default ones
* builtin.conf: remove unneeded vlang/alang/slang lines
* vo_gpu: allow deband-iterations to be 0
* drm: remove selecting the card number with --drm-connector
* options: remove --vf-defaults and --af-defaults
* options: remove deprecated --record-file option
* vo_sixel: change exit-clear handling to OPT_REPLACED
* options: remove a few options marked with .deprecation_message
* command: stop restarting playback when writing to playlist-pos
* command: remove some old deprecated properities
* options: remove ancient option fallbacks/deprecation
* builtin.conf: remove deprecated opengl-hq profile
* demux_playlist: add --directory-mode=auto
* various: add missing include in header flles
* sub/ass_mp: filters/f_lavfi: forward declare mp_log
* sd_ass: use directive instead of writing magic constants
* vo_dmabuf_wayland: support osd rendering when there's no video
* mp_image: add force_window field
* demux_mf: detect svg
* sdl_gamepad: fix button detection on modern controllers
* TOOLS/autocrop.lua: switch to auto-copy hwdec during cropdetect
* TOOLS/autocrop.lua: cleanup timers correctly
* vo_gpu_next: fix unscaled screenshot with --blend-subtitles
* TOOLS/autocrop.lua: use VO crop always
* options: make video-crop validation more strict
* player/video: don't try to restore old crop when invalid were provided
* vo_gpu: match libplacebo debanding defaults
* vo_gpu: match libplacebo peak detection defaults
* DOCS: update notes about new profiles
* vo_gpu: default to dscale=hermite
* DOCS/options: document hermite scaler
* DOCS/options: remove potentially offensive language
* DOCS/options: remove spline36 section
* DOCS/options: change wording to be less inflammatory
* af_scaletempo2: fix missing variable init, remove redundant init
* af_scaletempo2: truncate final packet to expected length
* af_scaletempo2: fix processing of final packet
* af_scaletempo2: calculate latency by center of search block
* af_scaletempo2: restore exact audio sync on return to 1x speed
* af_scaletempo2: fix speed change latency and pts spikes
* af_scaletempo2: fix audio artifact on initial WSOLA iteration
* af_scaletempo2: fix audio offset when playing back at 1x speed
* af_scaletempo2: fix inconsistent search block position after init
* af_scaletempo2: move latency calculation to internal function
* af_scaletempo2: fix missing dereference when processing final packet
* af_scaletempo2: fix audio-video de-sync caused by speed changes
* DOCS/vo: remove some dated deprecation warnings about --vo=rpi
* meson: enable cplugins on Windows
* cplugin: allow loading mpv_* symbols dynamically
* libmpv: remove not used mpv.pc.in
* osdep/io: provide dlopen, etc. abstraction wrappers for windows
* scripting: dll cplugins
* builtin.conf: modernize internal profiles
* vo: change tscale to oversample by default
* vo: make cscale follow scale by default
* vo: enable correct-downscaling, linear-downscaling, sigmoid-upscaling
* vo: avoid unnecessary redraws when the OSD shows
* demux: prepend some cache options with demuxer
* filter_kernels: remove bcspline filter
* filter_kernels: fix bcspline params
* filter_kernels: add hermite filter
* vo_gpu_next: fix blur and taper values being zero
* vo_dmabuf_wayland: support 90 degree rotations
* DOCS/vo: remove outdated reference to --vo-vaapi-deinit-mode
* demux_mkv: support ProjectionPoseRoll element
* demux_mkv: support PixelCrop* elements
* TOOLS/matroska.py: add PixelCrop* elements
* demux: add crop to mp_codec_params
* win32: remove noisy debug log
* osc: add scrolling to audio/sub buttons
* vo_gpu: remove --scale-wblur etc
* filter_kernels: add ewa_lanczos4sharpest
* filter_kernels: refine ewa_lanczossharp/soft constants
* filter_kernels: use true jinc radius
* filter_kernels: replace magic jinc radius by constant (cosmetic)
* filter_kernels: properly sharpen/blur filter radius
* vo_gpu: slight bump to hard-coded option size limits
* vo_gpu_next: remove ewa_lanczossharp nag
* TOOLS/lua/autoload: rename local variable to lowercase
* TOOLS/lua/autoload: pass extensions to recursive call
* hwtransfer: make probe_formats logging less spammy
* vo_gpu: vo_gpu_next: support --icc-3dlut-size=auto
* vo_gpu_next: update for new ICC profile API
* present_sync: allow future timestamps
* vo_gpu_next: map --scaler-resizes-only
* TOOLS/lua/autoload: change EXTENSIONS_TARGET to a local variable
* TOOLS/lua/autoload: fix specify loading only one type of files
* TOOLS/lua/autoload: add directory_mode option
* TOOLS/lua/autoload: add recursive directory loading
* TOOLS/lua/autoload: avoid adding entries to the playlist more then once
* TOOLS/lua/autoload: support directories
* meson: check vulkan version
* stream: accept dav:// and davs:// urls
* meson: rename last feature with underscore
* DOCS/options: add catmull_rom as an example for --scale
* sd_lavc: fix subtitle presentation time
* Revert "sub: add auto option to --sub-fix-timing"
* vd_lavc: by default enable cropping by decoder
* DOCS/lua.rst: fix typo
* player: redo --subs-fallback-forced
* vo: change vsync_interval to double
* sd_lavc: account for floating point inaccuracy
* player/video: apply crop for all frames in vo_frame
* screenshot: support crop with --screenshot-sw
* vo_gpu_next: support --blend-subtitles when taking screenshoot
* vo_gpu: support crop in gl_video_screenshot
* vo_gpu_next: support crop in video_screenshot
* vo_gpu_next: forwards compatibility with pl_cache
* vd_lavc: disable cropping by decoder
* mp_image: add missing crop initialization
* video: allow overriding container crop if it is present
* stats.lua: don't display full frame crop
* player/command: mark video-params/crop- unavailable if empty
* m_option: return empty rect when no width/height is available
* autocrop.lua: enable vo_crop mode by default
* autocrop.lua: don't remove crop on startup/exit
* autocrop.lua: detect if crop is enabled based on prop
* m_option: make m_rect_apply center based
* sub: add auto option to --sub-fix-timing
* Revert "sd_lavc: use SUB_GAP_THRESHOLD for overlaps/gaps"
* path-{darwin,unix}: save cache to subdir when using non-XDG path
* meson: add -Bsymbolic for libmpv
* vo: vulkan: allow picking devices by UUID
* meson: include our local copy of libavutil uuid if ffmpeg is too old
* misc: add copy of uuid from ffmpeg
* {zsh,bash}-completion: use config when autocompleting profiles
* stream/dvbin: recommend to use specific channels.conf file names
* stream/dvbin: drop too verbose messages
* stream/dvbin: add some helpful verbose output
* stream/dvbin: detect ZAP channel configs looking like VDR configs
* stream/dvbin: do not forget channel list for multiply delivery systems
* stream/dvbin: add support for delivery system ISDB-T
* vo_gpu_next: don't rotate gamut visualization
* demux_lavf: get total duration from track durations
* {zsh,bash}-completion: add missing --no-config flags
* options: remove unnecessary clamping on video-pan-x/y
* Revert "aspect: change --video-pan-x/y to be relative to the destination rect"
* osc: add scrolling to the seekbar
* ci/lint: ignore subject length for revert commits
* vo_gpu: remove --tone-mapping-mode
* loadfile: fix forced subtitles not respecting slang
* builtin.conf: add --allow-delayed-peak-detect=no to gpu-hq
* win32: allow heap cache optimization and memory decommit
* win32: add BASE_SEARCH_PATH_PERMANENT to SetSearchPathMode
* win32: don't load dynamically always available functions
* win32/displayconfig: remove custom struct redefinition
* osc: remove toggle for forced only subpictures
* stats.lua: display --video-crop values when used
* man/input: remove trailing spaces
* player/command: add video-params/crop-[w,h,x,y]
* autocrop.lua: use new --video-crop
* vo: add --video-crop
* player/video: don't copy mp_image_params when not needed
* m_option: add OPT_RECT
* mp_image: add image crop rect to mp_image_params
* aspect: don't override src_start/src_end
* common: constify mp_rect_equals
* player/command: remove video-aspect property
* demux_playlist: default to --directory-mode=lazy
* stats.lua: enable --tone-mapping-visualize while stats shown
* vo_gpu_next: improve --tonemapping-visualize
* stats.lua: display hdr metadata and peak detection
* command: add hdr-metadata property
* vo_gpu_next: add support for VOCTRL_HDR_METADATA
* vo: add VOCTRL_HDR_METADATA to get mp_hdr_metadata
* csputils: add mp_hdr_metadata
* input.conf: swap wheel up/down with wheel left/right
* loadfile: fix --no-subs-with-matching-audio with --slang
* osc: replace sub-forced-only with sub-forced-events-only
* command: remove sub-forced-only-cur property
* player: rename --sub-forced-only to --sub-forced-events-only
* player: remove auto choice from sub-forced-only
* ci/mingw: attempt to enable Vulkan Video Decoding
* README: update minimum windows version and clarify
* stats.lua: add hints about scrolling
* stats.lua: refactor video params display
* stats.lua: remove dummy new lines from headers
* stats.lua: display actual output video size after anamorphic correction
* player: add always to --subs-fallback-forced
* player: add --subs-match-os-language option
* loadfile: simplify default track selection a bit
* player: remove special auto option from alang/slang/vlang
* playlist: remove unused code to track redirects
* player: always write redirect entries for resuming playback
* vo_dmabuf_wayland: unmap osd surface when not needed
* vo_gpu_next: fix --target-contrast=inf
* README: replace outdated xinerama reference with xpresent
* f_lavfi: don't reject dynamic lavfi ins/outs
* osc: fix margin for forced-only subs toggle in bar layout
* osc: only add sub forced-only toggle to layout for DVD/PGS subs
* input: add missing windows multimedia keys
* command: add `sub-ass-extradata` property
* vo_gpu_next: update tmp params before rendering frame
* vo_gpu_next: make option shim consistent with new API
* vo_gpu_next: avoid duplicate code (cosmetic)
* vo_gpu_next: correctly set params.frame_mixer
* vo_gpu_next: don't nuke main options state in video_screenshot
* vo_gpu_next: don't override main options in draw_frame
* Sun Aug 27 2023 llyyr <llyyr.public@gmail.com>
- Disable mujs backend for Leap because it's not available there
* Sat Aug 26 2023 Enrico Belleri <kilgore.trout@idesmi.eu>
- Add fix-docs-path.patch to install docs in our default docdir
- Enable jxl
- Use meson auto-features instead of disabling everything manually
- Small corrections to specfile
- Update to version v0.36.0+git20230826.83c0e980:
* hwtransfer: check if the source format is accepted directly by the VO
* hwtransfer: use the right hardware config to find conversion targets
* autoconvert: destroy sub filter immediately if reconfiguration is needed
* output_chain: don't reset autoconvert on changes to unrelated filters
* hwtransfer: implement support for hw->hw format conversion
* player: make all autoload extensions configurable
* player: use audio pts corresponding to playing audio on EOF
* input: add missing keypad key defines
* sub/osd: signal osd_changed on resize
* win32: don't ignore --screen and --fs-screen
* DOCS/mpv: document ZOOMIN & ZOOMOUT multimedia keys
* input: add new keys: Back, Tools, ZoomIn, ZoomOut
* vo_gpu_next: move line to correct location (cosmetic)
* vo_gpu_next: correctly handle GAMUT_AUTO
* ci/mingw: disable vulkan for 32-bit build
* ci/mingw: don't include useless DLLs in artifact
* ci/mingw: refactor build script into functions
* ci/mingw: enable more ffmpeg features
* ci/mingw: add necessary deps and enable vulkan
* ci/mingw: move functional test to workflow
* ci/mingw: update dependency versions
* vo_gpu_next: reword error message on empty screenshot
* DOCS/options: clarify the video-pan-x/y example
* aspect: change --video-pan-x/y to be relative to the destination rect
* aspect: don't allow scaled_src_size be 0
* DOCS/options: fix typo in video-pan-x example
* meson: rename all features with underscores
* context_drm_egl: remove references to VAAPI in error messages
* context_drm_egl: more correctness fixes for uninit procedure
* Revert "ao/pulse: implement period_size"
* w32_common: try to get the monitor from the window bounds
* w32_common: don't fit to screen when VO_WIN_FORCE_POS is set
* ao/pulse: implement period_size
* ao/jack: set device_buffer to JACK buffer size
* demux_mf: utilize stdbool bool for if a format specifier was bad
* demux_mf: early exit with the '%%' case
* win32_common: fixes minimized window being focused on launch
* ao_oss: add "spdif" passthrough support for high bitrate codecs (e.g. Dolby Atmos, DTS-HD, etc.) over HDMI
* drm_common: skip cards that don't have connected outputs
* meson: remove redundant libplacebo version check for Vulkan interop
* x11: set sizehint for fs-screen and fs-screen-name
* x11: remove xinerama and refactor window geometry
* x11: require randr 1.4
* context_drm_egl: don't free egl properties if they are null
* vo_gpu_next: correctly clear removed hooks
* sd_lavc: use SUB_GAP_THRESHOLD for overlaps/gaps
* Revert "sub/sd_lavc: don't check endpts when getting subs"
* vo_gpu_next: fix typo in video_screenshot()
* vo_gpu_next: add --libplacebo-opts
* vo_gpu_next: don't re-set frame_mixer
* vo_gpu_next: move allow_delayed to move appropriate place
* vo_gpu_next: switch to new pl_options system
* TOOLS/lua/autoload: Enable run-time updates of options
* TOOLS/lua/autoload: may specify loading only one type of files
* vo_gpu_next: fix leak of --icc-profile-auto on uninit
* vo_gpu_next: drop redundant PL_HAVE_LCMS check
* ci: update freebsd to latest release channel
* ci: disable libplacebo in msys2 build
* vo_gpu_next: use pl_dispatch_info_move to avoid useless data copy
* libplacebo: drop PL_API_VER compatibility paths
* ra_pl: drop PL_API_VER compatibility paths
* vo_gpu_next: drop PL_API_VER compatibility paths
* meson: remove redundant libplacebo-next check
* hwdec_cuda: drop old PL_API_VER compatibility path
* meson: bump minimum libplacebo dependency to v6.292
* stats.lua: display output resolution if it differs to native one
* stats.lua: hide window scale in fullscreen
* vo_gpu: allow --hdr-peak-decay-rate=0.0
* loadfile: avoid infinite playlist loading loops
* build: check for SNDCTL_DSP_HALT for oss-audio
* vo: clear vsync_offset if drawing while paused
* win32: fix display resolution calculation on mulitple monitors
* demux_playlist: remove len restriction on headerless m3u
* wayland: clear all keys on keyboard_handle_leave
* wayland: clear saved mpkey more aggressively
* wayland: use fallback for display-fps/width/height
* x11: add --x11-wid-title option
* player: add playlist-path properties
* vf_vapoursynth: save display resolution as a variable
* player: add --term-remaining-playtime option
* player: make sub-pos a float value
* x11_common: drop unnecessary NULL check
* x11_common: avoid unnecessary XUnmapWindow() call
* stats.lua: use video-params/aspect-name
* player/command: add video-params/aspect-name
* ytdl_hook: improve Windows exe search with suffix
* command: don't print "unknown" on video tracks
* player/video: avoid spamming logs with EOF
* audio: drain ao before setting pause
* command: show "no" for hwdec-current if hwdec failed
* command: fix some fringe play-dir behavior
* sub/sd_lavc: don't check endpts when getting subs
* sub: fix switching tracks while paused
* path-unix: abort on path truncation
* osc: support speed-independent time-remaiing display
* command: fix stack smashing when displaying aspect-ratio
* external_files: add sbv to the sub whitelist
* external_files: alphabetize file extensions
* DOCS: update LGPL building instructions
* m_option: change m_option_type_aspect to double
* vo_gpu_next: actually fix screenshots with PAR
* ao_audiotrack: enable pcm-float by default
* ao_audiotrack: support more channel layouts
* ao_audiotrack: support media role
* ao_audiotrack: don't ignore ao_read_data return value
* ao_audiotrack: allow byte buffer data transfer for float samples
* ao_audiotrack: align buffer size to sample size
* ao_audiotrack: do not needlessly resample
* ao_audiotrack: fix broken exception checks
* ao_audiotrack: remove unused writeV23
* vo_gpu_next: take into account PAR when taking screenshots
* ad_spdif: fix this not working at all
* vo_gpu_next: add ability to use named hook params
* mp_image: properly infer color levels for some pixfmts
* vo_gpu_next: increase non-interpolation queue size
* vo_gpu_next: update for new pl_filter configuration API
* win32: signal VO_EVENT_DPI on dpi changes
* test/meson: add missing avutil dependency to chmap test
* test: indicate test function ran in log
* test: enable log messages for libmpv test
* test: refactor helper methods to be universally usable
* options: fix relative time parsing
* options: rename variables in parse_timestring
* vd_lavc: repeatedly attempt to fallback if hwdec fails in reinit
* DOCS/options: fix typo in hdr-peak-percentile
* vo_gpu/vo_gpu_next: fix setting an empty dscale
* builtin.conf: add --hdr-peak-percentile=99.995 to gpu-hq
* vo_gpu_next: add --hdr-peak-percentile
* player/main: do not print build time, if it is unknown
* version: move NO_BUILD_TIMESTAMPS check to version.h.in
* build: remove version.py
* vo_vdpau: set hwdec image format
* test: bump libmpv test timeout
* drm: bump minimum version to 2.4.105
* ci: update the mpv.com path
* build: remove outdated generated directory
* ao_pipewire: set media role during init()
* audio: add AO_INIT_MEDIA_ROLE_MUSIC
* Mon Jul 31 2023 llyyr.public@gmail.com
- Remove waf build: removed upstream
- Make meson a hard requirement now
- Bump libplacebo requirement to 6.292.0 for Tumbleweed
- Add patch 0001-Revert-meson-bump-required-version-to-0.62.patch
to lower meson requirement for Leap
- Update to version 0.36.0+git.20230730.1bbc7a2c:
* ao_sndio: use sio_flush() to improve controls responsiveness
* draw_bmp: fix overflowing coordinates in mark_rcs
* Revert "audio: add AOCONTROL_UPDATE_MEDIA_ROLE"
* Revert "ao_pipewire: handle AOCONTROL_UPDATE_MEDIA_ROLE"
* meson: look for linux/input-event-codes.h with libwayland flags
* version.py: fix build date
* options: restore old default sub selection behavior
* vo_gpu_next: fix assertion on wayland
* vo_gpu_next: delay swapchain submit until flip_frame()
* path-win: move state directory to %LOCALAPPDATA%
* path-win: add subdirectory for cache
* Revert "ci/msys2: double down on running meson through python3.11"
* ad_spdif: fix segfault due to early deallocation
* test: enhance libmpv test
* player/video: check for track and decoder existence
* video_writer: fix gamma for YUV screenshots
* image_writer: log pixfmt conversion
* encode_lavc: fix leak of codecpar
* zimg: fix abort on subsampled input with odd heights
* demux_mkv: add missing space to log msg
* build: remove unneeded libdl requirement for vaapi
* build: refactor vaapi handling
* ci/mingw: reduce git clone depth to 1
* ci/mingw: use ccache
* ci/mingw: disable fail-fast
* ci/mingw: check if binary is runnable before packaging
* language-posix: as a fallback, treat "C" as "en"
* msg: print MSGL_WARN and higher error messages to stderr
* build: vaapi-x-egl is not used anywhere, remove it
* build: vaapi-egl should explicitly depend on egl
* build: vaapi-drm and vaapi-wayland do not depend on egl
* ci/mingw: update luajit to fix i686 crashes
* wayland: restore xkb_keysym_to_utf8 handling
* build: internally rename gl-wayland to egl-wayland
* waf: remove waf as a build system
* Sun Jul 23 2023 llyyr.public@gmail.com
- Update to version 0.36.0+git.20230723.60a26324:
* Update VERSION
* Release 0.36.0
* Revert "vo_gpu_next: use pl_dispatch_info_move to avoid useless data copy"
* ao_pipewire: for_each_sink: properly check termination condition
* DOCS/vo: clarify dmabuf-wayland a bit
* vo_dmabuf_wayland: correctly handle force-window
* player/video: check for forced eof
* vd_lavc: respect vd-lavc-software-fallback opt
* vo_vaapi: restore hardware video decoding
* vo_vaapi: fix segfault in draw_osd
* ao_pipewire: use native buffersize by default
* terminal-unix: fix not listening on input after being foregrounded
* osc: don't add margins to osc-deadzonesize
* DOCS: clarify screenshot window and screenshot-sw
* vo_drm: remove VOCTRL_SCREENSHOT_WIN
* screenshot: implement screenshot-window in sw for most VOs
* screenshot: clarify software screenshot logic
* image_writer: use proper specifier for int64_t
* {zsh,bash}-completion: run mpv with --no-config
* bash-completion: do not complete removed options
* zsh-completion: do not complete removed options
* zimg: fix broken sig_peak handling
* image_writer: move tag_csp check into image_writer_flexible_csp()
* image_writer: replace sprintf usage
* image_writer: share some code between write_lavc and write_avif
* image_writer: error check avif-pixfmt option
* image_writer: fix still-picture option for AVIF
* image_writer: remove duplicate packet writing code
* TOOLS: remove obsolete travisCI-related scripts
* wayland_common: remove questionable gcd impl and global state
* wayland: don't treat tiled and maximized windows the same
* wayland: add locked_size convenience shorthand
* builtin.conf: add --hdr-contrast-recovery to gpu-hq
* vo_gpu_next: add --hdr-contrast-recovery/smoothness
* builtin.conf: unset default languages in libmpv and encode profiles
* vd_lavc: repeatedly attempt to fallback if hwdec fails in receive_frame
* wayland: handle modifier keys correctly
* vo_gpu_next: add --target-contrast option
* loadfile: make get_audio_lang function static
* DOCS/release-policy.md: add additional advice
* loadfile: compute audio lang for sub selection when using lavfi-complex
* wayland: wrap resize requests in prepare_resize
* sd_ass: fix converted subtitles having too-wide borders
* sd_ass: don't reconfigure ass on every frame
* player: set default cache dir on macOS
* DOCS/mpv: clarify the location of cache/state files
* path-win: implement cache directories
* DOCS/interface-changes: document change in ctrl+h behaviour
* vd_lavc: map `hwdec=yes` to `hwdec=auto-safe`
* vd_lavc: add `drm` and `drm-copy` to the `auto-safe` list
* input: update ctrl+h to toggle `auto-safe` rather than `auto`
* vd_lavc: try other hwdecs when falling back after an hwdec failure
* Fri Jul 14 2023 mia@0x0.st
- Update to version 0.35.1+git.20230714.1f683401:
* vo_dmabuf_wayland: error out if compositor doesn't support the format
* build: make dmabuf-wayland a build option and require drm
* console: sort the output from the `help` command
* player: delete watch later redirect entries again
* wayland: use xdg_surface_set_window_geometry
* Revert "wayland_gl: wait until resize to create egl_window"
* vo_dmabuf_wayland: guard in destroy_osd_buffers
* vo_dmabuf_wayland: stop lazy loading hwdec
* vo_dmabuf_wayland: don't try to get pts without frame->current
* draw_bmp: ensure last slice is less than total width (again)
* vo_dmabuf_wayland: add osd support
* vo_dmabuf_wayland: init wl_list at the top of preinit
* vo_dmabuf_wayland: stop guarding viewport interfaces
* video/image_writer: check for write errors
* video/image_writer: fix file leak in error path
* wscript: add 1.32 protocols to sources
* stats.lua: set sans-serif as default font
* wayland: add xdg_toplevel.wm_capabilities handler
* wayland: add support for suspended toplevel state
* wayland: add cursor-shape-v1 support
* vd_lavc: fix delay_queue for videos with frames < max_delay_queue
* vd_lavc: prefer d3d11va-copy over dxva2-copy
* vo_wlshm: bail out of resize if width/height is 0
* wayland: fix memory leak with multiple monitors
* player: delete watch_later file after successful load
* json: unify json_parse depth to MAX_JSON_DEPTH=50
* terminal-unix: better error detection logic
* TOOLS/idet: fix some outdated cli syntax
* demux_playlist: sort files before directories
* demux_playlist: add option to control recursive directory loading
* TOOLS/lua/autoload: allow extending ext sets from script-opts
* various: correctly ignore cache files with --no-config
* vo_gpu/vo_gpu_next: enable gpu shader and icc cache by default
* vo_gpu: fix some cache related memory leaks
* player: add --input-cursor-passthrough option
* TOOLS/lua/autoload: avoid unnecessary playlist manipulation, performance
* wscript: bump required libplacebo-next version to 5.266
* vo_gpu_next: remove synchronization from info_callback
* vo_gpu_next: use pl_dispatch_info_move to avoid useless data copy
* ci/msys2: double down on running meson through python3.11
* vo_x11: don't rely on XFree to free calloc-ed data
* vo_x11: check for calloc() failure
* win32: add support for drag-and-drop option
* options: add no to drag-and-drop
* test/meson: explicitly specify lavf dependency
* player/screenshot: add "screenshot" logger
* video/image_writer: add avif screenshot support
* options: drop unnecessary casts
* options: use designated initializer
* vd_lavc: do inline string array initialisation for hwdec_api
* vd_lavc: let the user provide a priority list of hwdecs to consider
* osdep: remove erroneous POLLERR emulation
* wayland: remove erroneous POLLERR usage
* image_writer: respect jpeg-quality when using ffmpeg for writing
* image_writer: remove unused struct fields
* mp_image: abort on av_buffer_ref() failure
* loadfile: fix leak due to setting NULL parent
* hwdec: fix undeclared identifier in mediacodec_embed
* vo_drm: fix null dereference and using closed fd
* github/workflows: do not copyback files from freebsd VM
* github/workflows: bump freebsd VM memory size to 8GB
* hwdec: do not add hwdec device if it failed to create
* vd_lavc: check if av_device_ref is available
* ci/msys2: switch to Python 3.11 to fix crashes during build
* loadfile: insert missing parentheses
* osc: add toggle for forced-only subs
* loadfile: expose auto-forced-only when printing stream info
* command: add sub-forced-only-cur prop
* command: report auto-forced-only flag in track desc
* sub: rewrite auto-forced-only support
* player: add more precise sub fallback options
* options: default slang to auto
* loadfile: support "auto" as a language option
* loadfile: use mp_match_lang_single
* loadfile: take a const char* in match_lang
* loadfile: short-circuit early on null stream language
* osdep: add mp_get_user_langs
* osdep: move cfstr<->cstr conversions to a new apple_utils.c file
* misc: add language-matching utilities
* options: set subs-with-matching-audio to off by default
* vo: hwdec: prioritise `drmprime` over `drmprime_overlay`
* ad_lavc: check for allocation failure
* vo_gpu_next: add --corner-rounding option
* vo_gpu_next: add missing --gamut-mapping-mode options
* ao_pipewire: bump dependency to 0.3.48
* ao_wasapi: use client name instead of hardcoded string
* ao_wasapi: remove infinite loop hack in AOCONTROL_UPDATE_STREAM_TITLE
* demux/demux_lavf: avoid leaking AVFormatContext during demux_open_lavf
* vo_dmabuf_wayland: drop linux-dmabuf-v2 (again)
* wayland: bump wayland-protocols to 1.25
* wayland: bump required version to 1.20
* DOCS: fix admonition typo
* vo_dmabuf_wayland: update the image of pending buffers
* vo_dmabuf_wayland: use a minimum of 15 buffers
* ci: use a different mirror for freetype
* player: add drag-and-drop option
* wayland: avoid misleading log messages on drag/drop
* ci/mingw: add dlltool to the meson crossfile
* mpv.desktop: add Russian translation for GenericName
* ci/mingw: remove cache
* ci/mingw: update dependencies versions
* ci/msys2: enable egl-angle-lib
* github/workflows/build.yml: install ca-certificates package on msys2
* bootstrap.py: update waf to 2.0.25
* DOCS/mpv: add an example for applying profiles to certain paths
* player: don't load unwanted files after 519e56f
* hwdec_cuda: bump required headers version for timeline semaphores
* hwdec_cuda: clear vulkan semaphore fd after passing ownership to cuda
* hwdec_vulkan: respect probing flag when logging during init
* vulkan: don't assume all ra_ctx implementations have a swapchain
* hwdec_cuda: remove usage of deprecated libplacebo sync API
* video/out/android: assert WinID value before use
* path: handle URLs consistently in mp_basename
* lua: read_options: find script-opts prefix at index 1 exactly
* demux/demux_lavf: strip URL parameters before matching extension
* hwdec_vulkan: enable AV1 support if available
* hwdec_vulkan: check for the correct libplacebo version
* vo: hwdec_aimagereader: fix compile
* hwdec_vulkan: simplify requirement checks for Vulkan interop
* vo/vulkan: do not define zero sized array
* hwdec_vulkan: account for vulkan frames now using presentation size
* f_hwtransfer: disable vulkan multiplane images when uploading from cuda
* hwdec_vulkan: use bwdif_vulkan as deinterlacing auto filter
* vo: vulkan: request additional extensions and features for ffmpeg
* hwdec_vulkan: add Vulkan HW Interop
* vo: hwdec: Pass the ra_ctx to hwdecs instead of just the ra
* vo_gpu_next: fix to allow using dllimport
* vo_gpu_next: respect `gl->flipped`
* opengl: move `ra_gl_ctx_params.flipped` to `struct GL`
* vo: make mp_frame_perf thread safe
* vo_gpu_next: add size guard for pass->num_samples
* vo_gpu_next: synchronize voctrl_performance_data access
* vo_gpu_next: fix off by one in info_callback
* vo_dmabuf_wayland: rewrite around wl_list
* vo_gpu_next: fix build on older libplacebo
* vo_gpu_next: update to new libplacebo gamut mapping API
* vo_gpu_next: remove --tone-mapping-crosstalk
* context_drm_egl: check for non-existant drm in uninit
* player: improve diagnostics around writing watch_later files
* path: let configdir also override "cache" and "state" paths
* path: simplify "cache" and "state" fallback
* player: always try to detect subtitle language from file name
* ra_d3d11: change how messages are ignored during texture size lookup
* wayland: improve guessing when mpv is focused
* demux/demux_lavf: pass-through mime_type
* demux/demux_lavf: pass-through filename for HLS
* Revert "demux/demux_lavf: pass dummy filename when an HLS mimetype is detected"
* demux/demux_lavf: pass dummy filename when an HLS mimetype is detected
* vo_gpu_next: allow to use ICC profile luminance value
* mp_image: use the ffmpeg interlaced frame flags where available
* ao_oss: return actual OSS playing state
* player: use XDG_CACHE_HOME by default
* player: use XDG_STATE_HOME for watch_later
* path: expand internal path selection API to allow for additional types
* osdep: separate out macos paths from path-unix.c
* DOCS/options: document required parameter for --x11-name
* meson: bump required version to 0.62
* wayland: add support for wl_surface.preferred_buffer_scale
* options: read config file as stream
* ci: switch to lua51 for MSYS build
* ci: use auto detection for lua library version for MSYS
* charset_conv: fix memory corruption in mp_iconv_to_utf8
* sub: fix UPDATE_SUB_HARD for converted and external subtitles
* console.lua: add a script-opt for the border size
* vo_gpu_next: fixes to allow using dllimport
* ao_pipewire: clarify --pipewire-buffer=native
* ao_pulse: clarify --pulse-buffer=native
* ao_pipewire: let sound server determine latency
* ao_pipewire: give sound server more flexibility for buffers
* hwdec_drmprime: support rpi4_8 and rpi4_10 formats
* ytdl_hook: fix clip start and end
* libmpv: fix file name in documentation
* meson: use the new build_options method
* wayland: correctly scale configure_bounds
* player/screenshot: avoid non-sRGB spaces with --screenshot-tag-csp=no
* video/out/gpu: Fix compilation warning of out of bound access
* mp_image: always add AV_FRAME_DATA_DOVI_METADATA when present
* ci: add a workflow that lints commit messages
* auto_profiles: try to distinguish invalid properties better
* auto_profiles.lua: apply profiles when conditions are truthy
* osc: skip rendering when osd_dimensions are 0
* win32: follow Windows settings and update dark mode state
* d3d11: retry device creation without debug, if SDK is not available
* build: add check for eglext_angle.h when checking for ANGLE
* context_angle: include eglext_angle.h explicitly
* DOCS/input: fix typo
* auto_profiles: check for non-existent properties
* various: fix various typos in the code base
* various: fix typos
* demux_lavf: update to handle deprecation of `io_close`
* ci: bump cache version to rebuild libplacebo
* ci/mingw: require libplacebo-next
* build: add an option to control gpu-next
* ci/mingw: update meson
* meson: fix libplacebo-next version comparison
* vo_gpu_next: drop various PL_API_VER checks
* wscript: bump libplacebo-next required version to 5.264
* meson: bump libplacebo-next required version to 5.264
* player/screenshot: add filename return field
* player: set playlist title to media title if not set already
* Revert "player: set playlist title to media title if not set already"
* meson: rst2pdf handle dependency file
* TOOLS/docutils-wrapper: handle commands without depfile
* TOOLS/docutils-wrapper: properly propagate failures
* TOOLS/docutils-wrapper: gracefully remove non-existing files
* DOCS/lua: fix typo
* options: enable scripts related opts also with cplugins.
* Sat Mar 18 2023 mia@0x0.st
- Update to version 0.35.1+git.20230315.e1727553:
* test: update format refs to ffmpeg 6
* github/workflows: fix failure conditions
* common/av_common: clean up mp_lavc_set_extradata
* sub/sd_lavc: properly fill avctx with codecpar values at init
* sub/lavc_conv: properly fill avctx with codecpar values at init
* common/av_common: constify mp_codec_params related getters
* demux_mkv: support ARIB captions
* player/command: fix mem leak in user-data property; closes #11436
* vo_gpu_next: compatibility with libplacebo v6.265
* wayland: make wayland-edge-pixels-pointer default to 16
* wayland: use correct x/y coordinates for the cursor
* screenshot: fix segfault when taking a screenshot without video
* wayland: fix client side resize
* vo_gpu_next: compatibility with PL_API_VER >= 254
* vo_gpu_next: use inverse mapping functions to tag screenshots
* video/out/placebo/utils: add mappings from pl enums to mpv enums
* video: add missing libplacebo colorspace enums
* mp_image: assert if src and dst are different in copy_attributes
* mp_image: copy side data in mp_image_copy_attributes
* ao_pipewire: use realtime scheduling for data thread
* loadfile: strongly prefer that all streams are from the same program
* command: expose hls-bitrate and program-id as track-list subproperties
* loadfile: report hls_bitrate and program_id in struct track
* demux: propagate hls_bitrate and program_id in generated caption tracks
* demux_lavf: report program_id
* ytdl_hook: only log error when no fallback url available
* ytdl_hook: init fragment requires other fragments
* vo: fix race condition with redraw requests
* ci: separate meson tests and reorganize build steps
* test: integrate unittests with meson
* ci: use the same arguments when running the built mpv binary
* player: remove unittest option
* test: update ffmpeg format refs
* zimg: fix MP_CSP_PRIM_CIE_1931 mapping
* zimg: add ZIMG_TRANSFER_ST428 mapping
* zimg: set correct primaries for XYZ
* sws_utils: hardcode output gamma and primaries for XYZ
* mp_image: fix XYZ gamma and primaries guess
* vo_gpu: improve XYZ conversion
* mp_image: be less agressive with clearing color information
* f_swscale: do not reset color levels to default
* csputils: add MP_CSP_TRC_ST428 as defined in ST 428-1
* DOCS/options: mention default value of cursor-autohide
* DOCS/options: clarify hidpi-window-scale description
* player: add --auto-window-resize option
* ra: assert when using params with dimensions
* sub: add --sub-fonts-dir and --osd-fonts-dir options
* wayland: request frame callbacks on the topmost surface
* wayland: deduplicate and cache detection of dmabuf-wayland
* wayland: use bool type for alpha framebuffer tracking
* vo_gpu: d3d11_helpers: prefer DXGI_SWAP_EFFECT_FLIP_DISCARD if possible Similar to libplacebo[1], DXGI_SWAP_EFFECT_FLIP_DISCARD is used instead of DXGI_SWAP_EFFECT_FLIP_SEQUENTIAL starting with Windows 10.
* vf_gpu: initialize depth=1 on target textures
* video: initialize depth=1 on screenshot textures
* external_files: recognize jxl and avif files as cover art
* {console,ytdl_hook}: use the platform property
* command: add platform property
* ytdl_hook: don't overwrite force-media-title
* ytdl_hook.lua: make exec return a single value
* TOOLS/autocrop.lua: log a more accurate warning
* audio: remove a duplicate clearing of a struct variable
* options: change parameter that was forgottin in property transition
* client API: reintroduce CONF_TYPE_FLAG for type conversion
* Partially revert "options: remove OPT_FLAG"
* console: observe osc margins from user-data instead of shared-script-properties
* osc: set values in user-data in addition to shared-script-properties
* player: set playlist title to media title if not set already
* various: fix warning -Wimplicit-const-int-float-conversion
* vo_gpu_next: fix warning -Wunused-function
* vo_wayland: fix warning -Wvoid-pointer-to-enum-cast
* vd_lavc: sort hwdecs without hwdevices last for autoprobing
* vd_lavc: prioritize mediacodec for hwdec autoprobe
* video: make csp option definitions private
* video: make csp equalizer params float
* vo_gpu: fix newline in log message
* demux: constify a struct member
* vo_gpu_next: fix color space hint with target peak override
* DOCS: clarify that GLX is deprecated
* options: remove explicit initialization of integers to 0
* options: remove OPT_FLAG
* options: transition properties from flag to bool
* options: transition commands from OPT_FLAG to OPT_BOOL
* options: transition options from OPT_FLAG to OPT_BOOL
* input: remove unused struct member
* DOCS/client-api-changes.rst: move mpv_del_property to 0.36.0
* various: drop unused #include "config.h"
* ao_pipewire: drop unused #include "generated/version.h"
* Vulkan: add configure check for VK_KHR_display extension
* vo_gpu_next: add --tone-mapping-visualize
* vo_gpu_next: parse Dolby Vision metadata for dynamic scene brightness
* mp_image: forward AV_FRAME_DATA_DOVI_RPU_BUFFER side data
* DOCS: document JPEG XL default effort change
* Revert "vo_dmabuf_wayland: drop support for linux-dmabuf-v2"
* video/image_writer: use effort=4 default for JXL screenshots
* ao_pipewire: fix removal of zeroed hooks on old pipewire
* vo_gpu_next: allow native CSP screenshots
* player/screenshot: pass on ability to output native CSP
* screenshot: explicitly default VOCTRL_SCREENSHOT csp
* video/image_writer: force sRGB for unsupported formats
* video/image_writer: add image_writer_flexible_csp
* vo_gpu_next: tag screenshots with correct colorspace
* vo_gpu_next: only apply target options in window screenshot mode
* vo_gpu_next: be explicit about screenshot repr
* m_property: avoid using a small stack buffer in m_property_do_bstr
* vo_gpu_next: expose --tone-mapping=st2094-40 and st2094-10
* vo_gpu_next: support mapping HDR10+ dynamic metadata
* ao_pipewire: allow usage of global volume control
* command: only avoid redrawing when old and new osd are both hidden
* DOCS/options: remove testing note in video-sync-max-factor
* vf_sub: undeprecate
* vo_dmabuf_wayland: reject hw formats not supported by compositor
* video/image_writer: change screenshot-tag-colorspace default to yes
* vo_dmabuf_wayland: add purgatory list to buffer pool to avoid memory leaks
* vo_dmabuf_wayland: ensure buffer pool is cleaned at start of uninit
* vo_dmabuf_wayland: simplify buffer pool reset
* vo_dmabuf_wayland: only resize when a new frame is about to be drawn
* DOCS/input: remove experimental note from sub-text
* ao_pipewire: report linking errors from init()
* ao_pipewire: add support for exclusive mode
* ao_pipewire: move stream flags to dedicated variable
* ao_pipewire: adjust message level based on probing
* f_hwtransfer: fix leak of framesconstraints
* image_pool: properly free frames
* ao_pipewire: remove unneeded goto
* ao_pipewire: replace opencoded talloc()
* ao_pipewire: print stream states as string
* ao_pipewire: remove unnecessary empty lines
* ao_pipewire: remove opencoded spa_zero()
* ao_pipewire: remove some unnecessary linebreaks
* ao_pipewire: reduce message level of unsuccessful connection
* ao_pipewire: remove unnecessary braces
* sws_utils: add check for HAVE_ZIMG to suppress warnings
* vo_gpu_next: add check for PL_HAVE_LCMS
* hwdec_cuda: fix enum type for semaphore
* vo_d3d11: do not call MAKEINTRESOURCEW twice
* osdep/io: add void to mp_penviron
* demux: remove unused code
* ao_lavc: remove unused code
* osdep: add MP_FALLTHROUGH
* libplacebo: fix enum type cast
* stats.lua: display HDR peak in nits
* meson: move vector check inside of meson.build
* meson: check macos touchbar with has_header
* meson: check pthread provider with has_function
* video/image_writer: avoid stripping colorspace info when writing image
* stream: accept webdav:// and webdavs:// urls
* ci: pack mingw64 meson build instead of waf
* ci: separate meson/waf build dirs
* ci: use meson compile instead of ninja directly
* ci: do not print compile commands
* meson: replace check_header with has_header
* meson: actually use -Werror=format-security
* hwdec/vaapi: zero-initialize VADRMPRIMESurfaceDescriptor
* player/video.c: don't resync audio if video is an image
* vo_lavc: set frame rate on encoder; fixes #11215
* wayland: add auto choice to wayland-configure-bounds
* wayland: handle runtime hidpi-window-scale changes correctly
* wayland: unbreak runtime geometry/autofit changes
* lua/js: remove user-data helpers
* lua/js: fix user_data_del util function
* doc: correct spelling of user-data/user_data JS/lua helpers
* docs: document new user-data property
* javascript/defaults: add user_data helpers
* lua/defaults: add user_data helpers
* player/command: add user-data property
* javascript: add mp.del_property()
* lua: add mp.del_property()
* libmpv: add mpv_del_property() convenience function
* player/command: add "del" command
* m_property: add M_PROPERTY_DELETE
* player/client: support observing sub-properties
* options/m_option: support duplicating MPV_FORMAT_BYTE_ARRAY nodes
* misc/node: add bstr-based variants for map_get() and map_add()
* misc/json: don't wrap top-level pretty strings/infs in quotes
* DOCS: Add missing 'not'
* hwdec_vaapi: close file descriptors even if surface export fails
* vo_dmabuf_wayland: close file handles when surface export fails
* vo_dmabuf_wayland: plug leaking file descriptor from solid buffer pool
* DOCS/compile-windows.md: update MSYS2 packages
* test/repack.c: skip tests that exceeded maximum allowed ZIMG dimension
* meson: add missing library dep for egl_angle_lib check
* vo_opengl/angle_dynamic: simplify symbol renaming to make it more straightforward
* waf: migrate to version.py
* ci: migrate MSYS2 build to GitHub Actions
* wscript: remove MSVC from compiler lookup
* meson: reuse libmpv objects for cplayer
* ao_pipewire: align thread name with general conventions
* audio: simplify implementation of property ao-volume
* stream/dvb: remove some unused variables
* x11: remove PresentNotifyMSC from egl/glx/vulkan to fix xpresent timing
* wayland: add wp-fractional-scale-v1 support
* wayland: rewrite geometry and scaling handling
* vo_gpu: implement VO_DR_FLAG_HOST_CACHED
* vo_gpu_next: implement VO_DR_FLAG_HOST_CACHED
* vd_lavc: add "auto" choice for vd-lavc-dr
* vo: add `int flags` to the get_image signature
* msg: log-file set at mpv.conf: don't ignore early messages
* msg: log-file buffer size: don't use magic number (no-op)
* drm: rewrite based around vo_drm_state
* mp_image: fix XYZ primaries default
* meson: skip some unneeded macos-specific checks
* meson: drop feature plain-gl
* ci: run meson tests
* meson: limit vaapi checks
* meson: don't add libmpv and cplayer features to conf_data
* meson: remove dependency from libmpv to plain-gl
* meson: add simple test executable for libmpv
* stream: remove trailing NULL element from stream list
* hwdec_cuda: drop support for PL_HANDLE_WIN32_KMT
* wayland: only warn when actually missing idle inhibit support
* vo: make driver list static
* vo: remove trailing NULL element from driver array
* ao: remove trailing NULL element from driver array
* DOCS/compile-windows.md: update with meson instructions
* build: officially deprecate waf
* TOOLS/lua/autoload: improve alphanumeric sorting
* wayland: store presentation feedbacks in a pool
* Revert "wayland: dispatch and wait for compositor events in uninit"
* TOOLS/docutils-wrapper: make executable + alphabetize
* audio: fix crash during uninit on ao_lavc
* meson: also search for rst2html with .py extension
* various: replace abort() with MP_ASSERT_UNREACHABLE() where appropriate
* various: replace if + abort() with MP_HANDLE_OOM()
* stream/dvb: drop support for DVB API before 5.8
* ao_audiotrack: replace malloc with talloc
* stream/cookies: use stream_read_file()
* {video,audio}: adjust unsafe strncpy usages
* video/x11: replace sprintf usage
* video: replace sprintf usage
* demux_mf: replace unsafe string functions
* ra_d3d11: fix incorrect type
* DOCS: clarify wid casting on Windows
* vo_dmabuf_wayland: drop support for linux-dmabuf-v2
* vo_dmabuf_wayland: support panscan and panning
* ta/README: update link to talloc documentation
* vo_wlshm: properly support video panscan
* player: don't force saving start in watch-later-options
* player: add video-sync=display-tempo
* player: choose speed of smallest acceptable factor for display sync
* TOOLS/lua/autoload: optimize performance of natural sorting
* TOOLS/lua/autoload: further optimize the natural sorting
* wayland: make vo_wayland_reconfig a bool
* wayland: cleanup on vo_wayland_init error
* vo: change vo_platform_init to bool
* vo_wlshm: cleanup on failure
* vo_dmabuf_wayland: goto err instead of returning
* vulkan: fix build error for 32bit builds with clang
* meson: dynamically compute dependencies for manpage and html build
* TOOLS/umpv: support shell-quotes in $MPV
* demux: new packet should not point to source buffer when copying data
* demux: actually initialise packet buffer when creating new packet
* version.py/version.sh: bump copyright year
* demux: boost read EBU R128 gain values to ReplayGain's reference level
* wayland: dispatch and wait for compositor events in uninit
* wayland: initalize display_fd as -1
* wayland: consistently employ use_present
* draw_bmp: ensure last slice width is less than total width
* vo: hwdec: fix drmGetDeviceNameFromFd2() related memory leak
* hwdec_drmprime: fix memory leak
* ao_coreaudio: use AudioUnitReset as ao_driver.reset to prevent long restart
* vo_opengl: do not blindly reject all Microsoft's OpenGL implementations
* demux: add --demuxer-hysteresis-secs option to save power with caching
* external_files: recognize webp files as cover art
* x11: add modesetting to the xpresent whitelist
* build: add configure test for POSIX shm for the sake of vo_kitty
* demux: replace deprecated usage of stack allocated AVPackets
* audio: reset pull AO at end of file
* vo_kitty: Introduce modern sixel alternative
* external_files: set log level for potential files to trace
* hwdec/d3d11va: fix a possible memory leak
* filter_kernels: fix kaiser
* man/vo: Typo
* man/vo: Correct --vo-sixel-buffered
* vo_sixel: Implement write() loop
* vo_sixel: Rename draw-clear -> config-clear
* osdep/terminal.h: Rename screen buffer controls
* vo_sixel: Alias/deprecate exit-clear -> alt-screen
* vo_sixel: Make buffering optional
* man/vo: Fix rendering error due to non-printables
* DOCS/interface-changes: Add --vo-sixel-draw-clear
* Revert "ao_pipewire: deactivate stream at end of playback"
* vo_sixel: Buffer full output sequence
* vo_sixel: Use write(2) on POSIX platforms
* vo_tct: Use newer options API
* vo_sixel: Move user options to struct
* vo_sixel: Add option to skip clear while drawing
* osdep/terminal: Move common esc codes to terminal.h
* vo_sixel: Use the alternate buffer to restore term
* vo_tct: Use the alternate buffer to restore term
* ao_pipewire: deactivate stream at end of playback
* ao_pipewire: clean up when hotplug_init fails
* ao_pipewire: destroy context on connection failure
* ao_pipewire: free properties on failure
* vd_lavc: Set AV_HWACCEL_FLAG_UNSAFE_OUTPUT flag
* hwdec_drmprime: support yuv420p format
* ao_coreaudio: use device's nominal sample rate for latency properties
* player: add window-id property
* ffmpeg: update to handle deprecation of `av_init_packet`
* sws_utils: update to handle deprecation of `avcodec_enum_to_chroma_pos`
* vd_lavc: update to handle deprecation of `pkt_duration`
* ffmpeg: increase minimum required version to 4.4
* wayland: check for resize/move in touch event first
* osc: don't spam window-controls bindings on every render
* ao_pipewire: log sample queueing
* TOOLS/umpv: prefer $XDG_RUNTIME_DIR
* vo_gpu_next: don't flush cache on OSD update
* meson: fix stdatomic detection on bsd
* lcms: fix validate_3dlut_size_opt
* lcms: always parse lcms2-related options
* vo_dmabuf_wayland: use single-pixel-buffer-v1
* wlbuf_pool.h: add headers for forward declarations
* meson: unbreak dl check on BSDs without libdl
* meson: prepend MPV_CONFDIR path with prefix
* vo_gpu_next: fix undefined behavior on alpha-first formats
* wayland: also log refresh rate on surface entrance
* drm: remove legacy API
* wayland: add support for content-type protocol
* player/video: add VOCTRL_CONTENT_TYPE
* player/main: log libplacebo version if built with it
* common/av_log: move general FFmpeg version before library versions
* vo: hwdec: remove legacy_names
* player: add --force-render option
* wayland: error out if essential protocol support is missing
* meson: fix capitalization of "OpenGL"
* ao_pipewire: log version information and metadata
* DOCS: update release policy to match reality
* Update VERSION
- Refresh mpv-make-ffmpeg-version-check-non-fatal.patch
* Wed Feb 08 2023 jaime.marquinez.ferrandiz@fastmail.net
- Update to version 0.35.1+git.20230128.140ec21c:
* ao_pipewire: log version and other useful debug info
* wayland: error out if essential protocol support is missing
* wayland: also log refresh rate on surface entrance
* vo_gpu_next: fix undefined behavior on alpha-first formats
* meson: prepend MPV_CONFDIR path with prefix
* meson: unbreak dl check on BSDs without libdl
* lcms: fix crash with lcms2-related options if lcms is disabled
* meson: fix stdatomic detection on bsd
* osc: don't spam window-controls bindings on every render
* wayland: check for resize/move in touch event first
* ao_coreaudio: use device's nominal sample rate for latency properties
* ao_pipewire: properly clean up resources
* filter_kernels: fix kaiser
* hwdec/d3d11va: fix a possible memory leak
* external_files: set log level for potential files to trace
* vo_opengl: do not blindly reject all Microsoft's OpenGL implementations
* ao_coreaudio: use AudioUnitReset as ao_driver.reset to prevent long restart
* hwdec_drmprime: fix memory leak
* vo: hwdec: fix libdrm-related memory leak
* draw_bmp: ensure last slice width is less than total width
* wayland: dispatch and wait for compositor events in uninit
* demux: boost read EBU R128 gain values to ReplayGain's reference level
* version.py/version.sh: bump copyright year
* vulkan: fix build error for 32bit builds with clang
* vo_wlshm: cleanup on failure
* ra_d3d11: fix incorrect type
* meson: also search for rst2html with .py extension
* audio: fix crash during uninit with ao_lavc
* mp_image: fix XYZ primaries default
* vd_lavc: add "auto" choice for vd-lavc-dr
* vo: implement VO_DR_FLAG_HOST_CACHED
* x11: fix issue with xpresent timing feedback
- Refresh mpv-make-ffmpeg-version-check-non-fatal.patch
* Fri Dec 23 2022 mia@0x0.st
- Update to version 0.35+git.20221222.657fd280:
* audio: reset pull AO at end of file
* vo_kitty: Introduce modern sixel alternative
* external_files: set log level for potential files to trace
* hwdec/d3d11va: fix a possible memory leak
* filter_kernels: fix kaiser
* Tue Dec 20 2022 mia@0x0.st
- Update to version 0.35+git.20221220.d5c3b9d9:
* man/vo: Typo
* man/vo: Correct --vo-sixel-buffered
* vo_sixel: Implement write() loop
* vo_sixel: Rename draw-clear -> config-clear
* osdep/terminal.h: Rename screen buffer controls
* vo_sixel: Alias/deprecate exit-clear -> alt-screen
* vo_sixel: Make buffering optional
* man/vo: Fix rendering error due to non-printables
* DOCS/interface-changes: Add --vo-sixel-draw-clear
* Revert "ao_pipewire: deactivate stream at end of playback"
* vo_sixel: Buffer full output sequence
* vo_sixel: Use write(2) on POSIX platforms
* vo_tct: Use newer options API
* vo_sixel: Move user options to struct
* vo_sixel: Add option to skip clear while drawing
* osdep/terminal: Move common esc codes to terminal.h
* vo_sixel: Use the alternate buffer to restore term
* vo_tct: Use the alternate buffer to restore term
* ao_pipewire: deactivate stream at end of playback
* ao_pipewire: clean up when hotplug_init fails
* ao_pipewire: destroy context on connection failure
* ao_pipewire: free properties on failure
* vd_lavc: Set AV_HWACCEL_FLAG_UNSAFE_OUTPUT flag
* hwdec_drmprime: support yuv420p format
* ao_coreaudio: use device's nominal sample rate for latency properties
* player: add window-id property
* ffmpeg: update to handle deprecation of `av_init_packet`
* sws_utils: update to handle deprecation of `avcodec_enum_to_chroma_pos`
* vd_lavc: update to handle deprecation of `pkt_duration`
* ffmpeg: increase minimum required version to 4.4
* wayland: check for resize/move in touch event first
* osc: don't spam window-controls bindings on every render
* ao_pipewire: log sample queueing
* TOOLS/umpv: prefer $XDG_RUNTIME_DIR
* vo_gpu_next: don't flush cache on OSD update
* meson: fix stdatomic detection on bsd
* lcms: fix validate_3dlut_size_opt
* lcms: always parse lcms2-related options
* vo_dmabuf_wayland: use single-pixel-buffer-v1
* wlbuf_pool.h: add headers for forward declarations
* meson: unbreak dl check on BSDs without libdl
* meson: prepend MPV_CONFDIR path with prefix
* vo_gpu_next: fix undefined behavior on alpha-first formats
* Sat Nov 19 2022 Mia Herkt <mia@0x0.st>
- Use Meson for build where possible as waf will be dropped in a
future version
* Sat Nov 19 2022 mia@0x0.st
- Refresh mpv-make-ffmpeg-version-check-non-fatal.patch
- _service: obs_scm -> obs_tar
- Do not require libsixel and mujs where no appropriate versions
are packaged
- Vulkan requires recent libplacebo; disable on Leap <= 15.3
- Update to version 0.35+git.20221118.d3a61cfe:
* wayland: also log refresh rate on surface entrance
* drm: remove legacy API
* wayland: add support for content-type protocol
* player/video: add VOCTRL_CONTENT_TYPE
* player/main: log libplacebo version if built with it
* common/av_log: move general FFmpeg version before library versions
* vo: hwdec: remove legacy_names
* player: add --force-render option
* wayland: error out if essential protocol support is missing
* meson: fix capitalization of "OpenGL"
* ao_pipewire: log version information and metadata
* DOCS: update release policy to match reality
* Sun Nov 13 2022 ecsos@opensuse.org
- Update to version 0.35+git.20221112.2f747341:
* Update VERSION
* Release 0.35.0
* meson: fix macos-touchbar check
* github/workflows: force deletion of existing upstream python symlinks on macOS
* vo_gpu_next: add tunable shader parameters
* vo_gpu: mark --gamma-factor and --gamma-auto with deprecation warnings
* wayland, x11: fix possibly unsafe bstr usage
* ao_pipewire: reload ao on stream disconnect
* ao_pipewire: explicitly remove stream hook
* ao_pipewire: log generic stream errors
* Revert "ao/audiounit: include AVAudioSession buffer in latency calc"
* vo_dmabuf_wayland: improve error handling exporting VA surface
* hwdec_vaapi: only set VADisplay resource if entire init process has succeeded
* github/workflows: remove seccomp disablement
* github/workflows: bump linux jobs to Ubuntu 22.04 base VM
* github/workflows: move all build jobs to checkout V3
* github/workflows: remove xcode 13.0 to xcode 13.1 override
* github/workflows: remove macOS 10.15 image usage
* sd_ass: never mangle colours on RGB video
* meson: move dmabuf-wayland specific files under the right check
* gpu/context: properly guard wldmabuf context
* console: add history deduplication
* github/workflows: remove pip usage in mingw CI
* vo_gpu_next: set background transparency
* ci: upload resulting binary of mingw64 build
* ci/mingw64: refresh build scripts
* ytdl_hook: reverse order of tracks
* demux/codec_tags: support more WAVEFORMATEXTENSIBLE tags
* wayland_common: always zero out presentation context when destroying it
* wayland: correct braindead comment (no-op)
* wayland: hack around presentation_feedback weirdness
* wayland: free dmabuf_feedback object
* test: update to reflect that Vulkan is a generic format again
* filters/f_hwtransfer: remove VAAPI <-> Vulkan mapping for now
* build: add an additional check for wayland-protocols 1.24
* meson: add more hardcoded values to configuration
* meson: use 'dl' instead of 'libdl' in find_library
* ci: use meson setup build instead of meson build
* ao_coreaudio: specify UTF-8 as text encoding for CFString conversions
* options: log profile name if there is no restore data
* console: respect the top margin shared script property
* vo_dmabuf_wayland: use special ra_ctx_create_by_name
* vo_dmabuf_wayland: load all hwdecs in preinit
* wayland: always do a display_roundtrip at the end of init
* github/workflows: print error logs on freebsd
* ci/build-freebsd.sh: remove nonexistent option
* vo_dmabuf_wayland: fix DRM builds with no VAAPI
* video/out/wayland_common: adjust decoration disagreement log level
* video/out/wayland_common: clear decoration request even if compositor disagrees
* video/out/wayland_common: don't pass a negative of border flag into ternary
* video/out/wayland_common: make decoration state usage explicit
* ao_pipewire: compatibility for libpipewire 0.3.19
* ci: require pipewire to be enabled for Tumbleweed Linux builds
* wayland: bump dmabuf protocol to version 4
* vo_vaapi_wayland: remove, as it is superceded by vo_dmabuf_wayland
* vo_dmabuf_wayland: wayland VO displaying dmabuf buffers
* wayland: clean wp_presentation_feedback in discard callback to avoid leak
* build_image_converter - use full image format list to create hw_upload
* mp_imgfmt: move DRMPRIME format to end of enum
* DOCS: document E to cycle through Editions
* ao: promote ao_pipewire
* ao_pipewire: test for session to contain audio sinks
* ao_pipewire: init_boilerplate(): simplify errorhandling
* TOOLS/lua/autoload: fix incorrect duplicate file loading behavior
* audio/format: fix Type 'struct entry' has incompatible definitions in different translation units
* vo_gpu/hwdec: add NULL check for legacy_name
* hwdec_aimagereader: fix incorrect return values
* demux_mkv: add AVS2 and AVS3 to tag list
* wscript: remove some bogus configure options
* demux_mf: add support for QOI, PHM and HDR images
* f_hwtransfer: allow hw uploads to implicitly convert formats
* f_hwtransfer: accept non-power-of-2 hw uploads
* hwdec/dmabuf_interop_gl: work-around implicit rgba swizzling
* f_hwtransfer: get rid of the shit list
* hwdec/vaapi: improve probing of supported sw formats
* vo_gpu_next: fix crash on uninit after startup failure
* sd_ass: improve handling of subtitles with unknown duration
* DOCS: fix minor typo with keep-open description
* draw_bmp: fix out of bounds access in mark_rect
* vo_gpu/hwdec: rename and introduce legacy names for some interops
* x11: fix --on-all-workspaces option
* vo_gpu_next: vulkan: libplacebo: unify log prefix
* github/workflows: explicitly install Xinerama on FreeBSD
* x11: fix a couple of memory leaks
* ao_pipewire: allow specification of remote name
* ao_pipewire: small cleanups and restructring
* osc: scale rendered aspect ratio with window aspect ratio
* wayland: correctly handle non-CLOCK_MONOTONIC clocks
* vulkan: remove --vulkan-disable-events
* vo: hwdec_aimagereader: add missing image format specifier
* vo_gpu: hwdec: add Android hwdec utilizing AImageReader
* DOCS: deprecate --gamma-factor and --gamma-auto
* vo_gpu_next: respect --blend-subtitles=<yes/no>
* ao_pipewire: don't try to lock nonexistent loop
* ao_pipewire: use target.object
* mp_image: strip DoVi metadata that requires an EL
* manpage: document bt.2390 parameter
* vo_gpu_next: fix screenshots of rotated sources
* DOCS/man/vf.rst : replace the outdated syntax
* vo_gpu_next: use static assert for array size
* vo_gpu_next: update render_info for upstream API change
* vo_gpu_next: implement --video-output-levels
* TOOLS/lua/autoload: add various extra file extensions
* TOOLS/lua/autoload: alphebatize auto-loaded file extensions
* ytdl_hook: use subtitle `name` as title if available
* af_scaletempo2: fix crash when the number of channels increases
* build: update waf to 2.0.24
* f_hwtransfer: mp_image_pool: support HW -> HW mapping
* f_autoconvert: f_hwtransfer: support HW -> HW uploads
* filters: lavfi: allow hwdec_interop selection for filters
* filters: support loading new hwdec_interops from filters
* vo: hwdec: do hwdec interop lookup by image format
* demux_lavf: extract is_image function
* demux_lavf: detect avif images
* DOCS/man/options.rst: replace some legacy single-hyphen syntax
* vo_gpu_next: support error diffusion dithering
* sub: use Unicode linebreaking for non-ASS subs and OSD
* ao_audiounit: get the channel layout from the AU itself
* mac: avoid unnecessary unsafe conversions; fixes crash in debug builds
* TOOLS/lua/autoload: add `m2ts` extension * `.m2ts` used for the Blu-ray disc container file format
* ytdl_hook: simplify exclude option parsing
* vo_gpu_next: only require full pixel byte alignment
* vo_gpu_next: implement ICC 3DLUT caching
* vo_gpu_next: use correct pixel size when mapping formats
* ao_pipewire: listen to hotplug events
* ao_pipewire: use proper hotplug init APIs
* ao_pipewire: create is_sink_node helper
* audio: list devices for all AOs with hotplug_init
* audio: try to use playback AO as hotplug AO first
* ta: increase size of names printed
* ao_pipewire: handle AOCONTROL_UPDATE_MEDIA_ROLE
* audio: add AOCONTROL_UPDATE_MEDIA_ROLE
* ao_pipewire: fix indent
* repack: add repacker for ccc16x16 formats
* mpv.metainfo.xml: add XDG appstream metadata manifest
* DOCS: Mention "mono" audio channels option
* DOCS/libmpv: fix typo in linkage section
* w32: fix typo in F23 mapping
* vo_gpu_next: fix typo affecting --target-trc option
* macos: add support for F13-F20 keys
* w32: add support for F13-F24 keys
* x11: add support for F13-F24 keys
* wayland: add support for F13-F24 keys
* input: add function keys F13-F24
* ad_lavc: strip non-normalized floats
* vo_gpu_next: display subtitles without video stream
* DOCS/options: update vd-lavc-skiploopfilter, skipidct and related descriptions
* DOCS/mpv: remove spaces at EOL, ensure 80 cols
* DOCS/mpv: added COMMAND INTERFACE refs to INTERACTIVE CONTROL
* ao_pipewire: for_each_sink(): report errors
* meson: fix condition for enabling vaapi-egl
* meson: fix libplacebo check
* audio: fix lack of reinitialization on format change with pull AOs
* player/audio: remove explicit drain on EOF
* ao_pipewire: make sure not to exceed the available buffer
* audio: don't try to drain non-existent AO
* vo_gpu_next: pass GL get_proc_addr pointer to libplacebo
* ao_pipewire: test on FreeBSD
* mpv.desktop: add RIST protocol to desktop entry
* osxbundle: add RIST protocol support to app metadata
* stream_lavf: enable RIST protocol support via ffmpeg
* ao_pipewire: restructure logic a bit
* ao_pipewire: only try to read requested data
* ao_pipewire: report all available info about chunk
* ytdl_hook: improve track detection
* misc/random: add xoshiro random number implementation
* meson: fix the build-date option
* meson: fix building without gl
* meson: consistently use feature['foo']
* meson: refactor generating config.h
* meson: disable dvdnav by default
* meson: reduce dictionary usage
* meson: add comment clarifying windows-internal-pthreads
* ytdl_hook: consistant behavior for single format
* wayland: add support for configure bounds
* x11: fix display-{width,height} calculation
* DOCS/options: correct wayland-disable-vsync option
* ytdl_hook: fix default track for single format
* github/workflows: auto-update freebsd-vm within major version
* drm_common: remove hard dependency on drmIsKMS()
* context_drm_egl: skip page flip wait on error
* gpu/hwdec: reorder `drmprime` below `drmprime_drm`
* video/drmprime: fix use-after-free
* hwdec/drmprime: fix build
* hwdec/dmabuf_interop: Properly prefix `priv` struct
* hwdec/drmprime: Fix small issues
* audio: drain ao on EOF
* hwdec/drmprime: add drmprime hwdec-interop
* ao_pipewire: tell audio server about number of queued samples
* man: remove unhelpful language
* ao_pipewire: use mpv logging
* hwdec/dmabuf_interop_gl: support basic multi-plane formats
* hwdec/dmabuf_interop: use AVDRMFrameDescriptor to describe dmabufs
* hwdec/dmabuf_interop: refactor out hwdec_vaapi dependencies
* hwdec/vaapi: rename interops to reflect more general use
* af_rubberband: add new engine option in rubberband 3.0.0
* drm_common: skip cards that don't support KMS for autodetection
* drm: avoid drmModeAtomicCommit races by blocking
* video: remove unnecessary code
* ytdl_hook: fix playlist index extraction
* ci: bump macos runner version
* wayland: add missing newline in wayland_common
* hwdec_vaapi_pl: support simple multi-plane image formats
* vo_gpu_next: fix screenshots on single-frame files
* vo_gpu/d3d11: fix VRAM leak
* osc.lua: add osc-tcspace script option
* osc.lua: add osc-unicodeminus script option
* vo_gpu_next: don't crash on !frame->current
* ytdl_hook: always set HTTP headers
* libplacebo: fix compatibility with libplacebo >= 5
* github/workflows: upgrade FreeBSD to 13.1
* vo_gpu: fix 3DLUT precision
* ao_pipewire: prevent deprecation warning for pw_stream_get_time()
* ao_pipewire: pipewire uses linear volume
* ao_pipewire: don't access core after disconnect
* ao_pipewire: zero listeners
* ao_pipewire: support ao-volume on non-stereo channel layouts
* DOCS/encoding: remove the legacy option syntax
* drm_prime: fix newline in error message
* meson: fix rst2html command
* context_x11egl: remove supposed transparency fix
* DOCS: fix typo
* DOCS/osc: fix option "showidlescreen" -> "idlescreen" This option was added in mpv-player@ec236f7, but its name in the document description is incorrect
* meson: add a summary at the end of configuration
* vo_gpu_next: implement --cscale
* swresample: don't forcibly clip on every conversion
* js: key bindings: ensure priorities for same-key - again
* x11: avoid XPresent API calls when it's not needed
* lua: command_native_async: make the callback optional
* lua: command_native_async: always callback a-sync
* x11: add --x11-present option
* x11: add nouveau to the xpresent whitelist
* x11: correct provider detection logic
* vo_vaapi_wayland: remove vaapi format query as formats are never used
* meson: remove pointless d3d11 dictionary
* x11: replace strcasestr usage with bstr
* github/workflows: install libxpresent on freebsd
* x11: support xorg present extension
* x11: use xrandr providers for driver detection
* vo: move wayland presentation to separate files
* meson: use require when checking for vdpau
* ci/build: Do not manually install Meson in openSUSE container
* meson: rearrange library dependency order to avoid crash with fontconfig
* vo_vaapi_wayland: only attach solid buffer once to main surface, on creation
* vo_vaapi_wayland: remove unnecessary subsurface sync/desync in resize
* ci/build-mingw64: enable test building
* ci/build-mingw64: bump dependencies
* ci/build-mingw64: switch to fossils directory for zlib
* ci/build-tumbleweed: attempt to enable unit tests in CI
* test/chmap: start adding AVChannelLayout unit tests
* audio/chmap: add mp_iterate_builtin_layouts
* f_lavfi: switch to AVChannelLayout when available
* ad_lavc: switch to AVChannelLayout when available
* af_lavcac3enc: switch to AVChannelLayout when available
* af_lavcac3enc: refactor chmap adding into its own function
* ao_lavc: switch to AVChannelLayout when available
* demux_lavf: switch to AVChannelLayout when available
* common/av_common: switch to AVChannelLayout when available
* audio/aframe: switch to AVChannelLayout when available
* audio: add AVChannelLayout helpers to convert from/to mp_chmap
* wayland: set appid before initial surface commit
* wayland_gl: fix a typo
* wayland_gl: wait until resize to create egl_window
* DOCS/options: fix incorrect labelling of hr-seek default
* sub: jsre filter: abort init early on empty filter list
* ci/mingw64: add git libplacebo for gpu-next
* github/workflows: move mingw CI to ubuntu 22.04
* ci/mingw64: make meson crossfile global
* wayland_gl: use wl->scaling when creating egl_window
* wayland: rearrange initialization logic
* player: add tiff/tif (TIFF) to list of image extensions
* player: add jxl (JPEG XL) to list of image extensions
* wayland: remove some unneeded lines from reconfig
* vo_gpu_next: fix OSD rendering of screenshots
* meson: add internal arg to wayland-protocols' get_variable()
* osc.lua: add idlescreen and osc-idlescreen
* video/out/dither: remove custom index_t typedef
* wayland: force vo_vaapi_wayland scaling to 1
* DOCS/interface-changes: mention vaapi-wayland vo
* vo: move allocate_memfd method to wayland_common
* vo_vaapi_wayland/wayland_common: code style fixes
* wayland: use mp_tag_str not drm_format_string
* vo: allow vaapi_wayland and vaapi_x11 to coexist
* wayland: don't depend on the order of global announcements
* vo: add new vaapi-wayland driver
* demux: stop iterating over demuxers as soon as a match is found
* osc.lua: fix crash when calling osc-tracklist while idle
* player: check for argv before printing help text
* player: set EOF when seeking to end with keep-open
* various: remove trailing whitespace
* wayland: use wl_output v4 for display-names
* lua: avoid rare memory leak in mp.join_path
* client API: always export symbols on windows
* stream_lavf: add support for ipfs and ipns
* meson: compile mpv.exe as a win32 gui application
* context_drm_egl: support monitor par
* github/workflows: add macOS 12 build
* video/image_writer: tag colorspace in AVCodecContext
* DOCS/input: fix typo "NANME" -> "NAME"
* console.lua: don't render a 2nd cursor on the OSC
* video/image_writer: fix high-depth JPEG XL screenshots
* build: add avcodec jpegxl dependency versions
* demux: add support for r128 replaygain tags
* DOCS/ao: remove only usage of git.io link shortening service
* wayland: use wl_surface_damage_buffer
* DOCS/options: properly capitalize JPEG XL
* video/image_writer: add Jpeg XL screenshots
* various: fix typos
* vo_gpu_next: avoid 0x0 resizes
* github/workflows: workaround git permissions error
* DOCS/options: update the --load-osd-console documentation
* DOCS/input: update the ASS tags documentation URL
* options: make --cover-art-auto=exact the default
* player: add cover-art-whitelist option
* DOCS: fix the typo of --sub-justify
* DOCS: correct --sub-shadow-color
* DOCS/{mpv,options}: document the watch later functionality
* vo_wlshm: use draw_frame instead of draw_image
* mpv.desktop: add japanese translation
* ci: switch Tumbleweed build to openSUSE container registry
* vd_lavc: fixup unchecked usage of AV_CODEC_EXPORT_DATA_FILM_GRAIN
* vd_lavc: fix decoder initialization when no VO is available
* vd_lavc: remove duplicate vd_ffmpeg_ctx pointer from init_avctx
* wayland: use wl_output v4 for --fs-screen-name
* x11: avoid wasteful rendering when possible
* player: rearrange video sync opts/enums/defines
* wayland: unify visibility checking code
* vo_gpu/d3d11: add message ID based log level mapping
* vo_gpu/d3d11: mimic libplacebo backbuffer usage
* vo_gpu/d3d11: enable receival of color depth without active backbuffer
* vo_gpu/d3d11: add helper function to get ra_format from DXGI_FORMAT
* vo_gpu_next: switch to unpooled hwdec mapping
* x11: fix screen-name option
* mpv.desktop: add turkish translation
* options.lua: remove unused function
* options: add osd-playing-msg-duration
* egl_helpers: request at least 8 alpha bits if necessary
* DOCS/input: mark chapter-list as writable
* drm: context_drm_egl: add support for enabling VRR
* vd_lavc: add vo caps and option to set GPU film grain application
* vo_gpu_next: apply film grain if such metadata is present
* vf_format: support forwarding/stripping film grain metadata
* mp_image: support film grain parameters
* vd_lavc: hide a deprecation warning in already handled compatible code
* sub/osd: use atomic for osd_state.force_video_pts
* osdep/atomic: add mp_atomic_double
* Revert "vo_gpu_next: remove unnecessary dependency"
* ao_pipewire: Do not hold thread lock during loop stop
* ao_pipewire: fix resource lifetimes
* vo_gpu_next: remove unnecessary dependency
* lua: use correct chunkname when loading script files
* vo_gpu[_next]: hwdec: fix logging regression when probing
* common/av_log: explicitly include version.h for required libraries
* vo_gpu_next: also include stride alignment in DR size
* vulkan: correctly inherit proc_addr pointer
* ao_sndio: fix parentheses warning
* client API: also export mpv_stream_cb_add_ro
* vo_gpu: hwdec_vaapi: Improve logging when probing surface formats
* DOCS/options.rst DOCS/vo.rst: Update discussion of hwdec usage
* vo_gpu_next: fix crash when disabling DR at runtime
* vo_gpu_next: don't leak mpi on failed upload
* vo_gpu_next: properly keep track of DR allocations
* hwdec: warn on unsupported hwdec option value
* vo_gpu_next: don't allocate dr_buf as part of the AVBufferRef
* hwdec: fix out-of-date preprocessor variable name
* ytdl_hook.lua: consider any subprocess status != 0 as error
* vo_gpu_next: add D3D11 RA texture wrapping/unwrapping for hwdec
* vo_gpu_next: add support for hardware decoding
* manpage: add vo_gpu_next wiki link to manpage
* vo_gpu_next: configure the VO queue size dynamically
* vo_gpu_next: expose EGLDisplay to pl_gpu
* vo_gpu: move hwdec loading code to common helper
* hwdec: release images as soon as possible after mapping
* hwdec_vaapi_vk: rename to vaapi_pl
* hwdec_vaapi_gl: properly zero initialize priv struct
* filters: Re-add vavpp deinterlacing auto-filter
* ytdl_hook: fix url_is_safe to match URL protocols properly
* vo_gpu_next: remove/simplify plane flipping hacks
* vo_gpu_next: avoid rendering subtitles as HDR/wide gamut
* mp_image: fix mp_image_plane_w/h
* stats.lua: page 2 - frame timing: use fixed display order
* stats.lua: graphs: fix bad rendering due to division by 0
* vo_gpu_next: refactor subtitle rendering
* options: add always to stop-screensaver
* DOCS/input: document subprocess more clearly
* DOCS/input: fix typo
* vo_gpu: hwdec: load hwdec interops on-demand by default
* ao_pipewire: fix ao-volume handling
* vo_gpu_next: don't crash on negative plane strides
* vo_gpu: d3d11_helpers: don't create UNORDERED_ACCESS backbuffers in Win7
* meson: remove horrifying macos luajit hack
* github/workflows: use lua 5.1 on macos
* DOCS/mpv: improve vf=rotate examples
* wayland: partially fix drag and drop handling
* ao_pipewire: validate pod creation
* ao_pipewire: add support for device selection
* vo_gpu_next/context: get graphics API-specific contexts from pl_gpu
* vf_format: simplify frame type checking after addition of DoVi option
* vo_gpu: hwdec_vaapi: Don't probe formats for irrelevant endpoints
* ci/appveyor: fix package install line
* osc.lua: seekbar hover: speed-up chapter access
* js: utils.get_user_path: make wrapper of expand-path
- Change source from cpio/tar to tar.xz to reduce the source code
size by a factor of 4.
- Update waf to version 2.0.24
- Set rubberband to version 3.0.0 which is need for optional dependencies.
- Remove --enable-pipewire because it is now autodetected.
You can now only disable.
- Disable pipwire under Leap because of build error.
- Enable openal, sixel.
- Enable mujs for Leap >= 15.4.
- Enable wayland for Leap >= 15.4.
- If libavif is installed default at build time it must have version >= 0.11.1
- Fix rpmlint filename-too-long-for-joliet.
* Tue Jun 07 2022 Dominique Leuenberger <dimstar@opensuse.org>
- Drop pkgconfig(libkms) BuildRequires: this has been removed from
latest libdrm.
* Sat Feb 05 2022 Enrico Belleri <idesmi@protonmail.com>
- Update to version 0.34.1+git.20220203T182214.5d31c7310c:
* libplacebo: switch to new target format API
* libplacebo: switch to new GPU limits APIs
* libplacebo: switch to v4 naming convention
* libplacebo: update log helpers
* vo_gpu_next: create shader cache dir if missing
* wayland: always start rendering after a resize
* filter kernels: add cosine window
* vo_gpu_next/context: common'ize things that would be common for non-vulkan
* auto_profiles.lua: don't warn if profile-restore=default
* Sun Jan 30 2022 Enrico Belleri <idesmi@protonmail.com>
- Update to version 0.34.1+git.20220129T121245.4d3ebb9d83:
* meson: add version check to wayland-protocols
* wayland: always resize when scale changes on surface enter
* wayland: support extra mouse buttons
* wayland: handle 0x0 resizes correctly
* x11: sanitize window title to UTF-8 for EWMH
* wayland: sanitize toplevel title to UTF-8
* ao_sndio: audio output added
* options: only apply sub-visibility to primary subs
* Revert "options: add --sub-visibility=<primary-only|secondary-only>"
* options: add --sub-visibility=<primary-only|secondary-only>
* player: add thd (TrueHD) to whitelist of audio extensions
* player: fix parentheses warning with &&
* Wed Jan 19 2022 Enrico Belleri <idesmi@protonmail.com>
- Update to version 0.34.1+git.20220117T134844.22b0bac28e:
* native pipewire AO
* Dolby Vision support
* player: fix autofit/geometry related segfault
* ao_oss: add missing PATH_DEV_MIXER define
* egl_helpers: fix context creation if GLES 3 is not available
* audio: stop corrupting audio on underreads
* wayland: fix a potential segfault on surface enter
* vo_gpu: opengl: fix wrong glMemoryBarrier call
* vo_gpu: opengl: create context at version 4.4 again
* af_lavcac3enc: fix memory leak on no-op
* subprocess: unblock/reset signals before running child process
* wayland: avoid doing unneccesary window resizes
* See https://github.com/mpv-player/mpv/compare/9ca9066d05..22b0bac28e
or https://git.srsfckn.biz/mpv/log/?qt=range&q=9ca9066d05..22b0bac28e
for the complete changelog.
Version: 0.34.0+git.20211101T154439.9ca9066d05-bp154.1.37
* Thu Dec 09 2021 Max Lin <mlin@suse.com>
- Disabled mujs support on Leap 15.4
* mujs BuildRequires pkgconfig(readline) which can not be provided
* Sun Nov 21 2021 Enrico Belleri <idesmi@protonmail.com>
- Update to version 0.34.0+git.20211101T154439.9ca9066d05:
* input.conf syntax: support custom quotes in `XstringX` form & single quotes
* ao_oss: readd OSSv4 audio output, default on *BSD
* osc: seekbar hover/drag: display target chapter at the OSC title
* stats.lua: add page 4 with a list of active key bindings
* sub: add --sub-filter-jsre (JS regex)
* vo_rpi: restore fullscreen handling
* vo_tct: add resize capability
* ytdl_hook.lua: search for yt-dlp by default (preferred over youtube-dl)
* vo_sixel: many fixes and improvements
* filters: switch from scaletempo to scaletempo2, used for speed option
* audio/vo_pulse: fix various edge cases and issues
* stats.lua: move internal performance info from page 4 to page 0
* command: don't hardcode command lists to be repeatable
* vo_gpu: drop support for libplacebo older than v3.104.0
* See https://github.com/mpv-player/mpv/compare/bc9d556f3a..9ca9066d05
or https://git.srsfckn.biz/mpv/log/?qt=range&q=bc9d556f3a..9ca9066d05
for the complete changelog.
* Thu Jul 01 2021 ismail@i10z.com
- Update to version 0.33.1+git.20210630T163736.f2afae55e9:
* wayland: refactor surface scaling
* sub: fix subs/lyrics on music files with sub-past-video-end=no
* wayland: fix wl_surface_set_buffer_scale usage
* wayland: always be sure to initially try to render
* wayland: remove unused includes
* wayland: handle app id option less stupidly
* wayland: reorganize wayland common code
* stats.lua: add scaled resolution
* DOCS: fix typo on seekbarkeyframes
* TOOLS/lua/autoload: load files even if current file is hidden
* TOOLS/lua/autoload: add ignore_hidden option
* player: fix property name
* lua: idle observers: ensure timers are up-to-date
* lua: timers: don't block forever with slow callbacks
* sub: by default, don't render timestamps after video EOF
* player: change cover-art-auto behavior
* js: idle-observers: minor performance improvement
* osc: seekbar hover/drag: display target chapter at the title
* manpage: add article in fuzzy explanation
* player: remove unnecessary check
* player: fix segfault
* osc: ensure tick after any mouse-event
* osc: don't initialize while mouse-down over an element
* osc: update chapter marker positions when duration changes
* Mon Jun 14 2021 ismail@i10z.com
- Update to version 0.33.1+git.20210613T225337.bc9d556f3a:
* js: add mp.utils.append_file
* vo_gpu: vulkan: displayvk: Fix handling of unconnected planes
* vo_gpu: vulkan: implement a VkDisplayKHR backed context
* vo_gpu: vulkan: provide a helper to access device name option
* vo_rpi: fix argument name
* github/issue_template: irc -> IRC
* {ci,docs,README}: update IRC references to new network
* docs: fix leftover reference to the now defunct --video-sync-adrop-size option
* ytdl_hook: improve handling of json parsing errors
* Sat May 29 2021 ismail@i10z.com
- Update to version 0.33.1+git.20210528T161101.d7f3d1fff7:
* wayland: refactor dispatching events
* manpage: mention cover-art-auto
* README: fix link to feature-request issues
* player: load cover art with the media filename
* win32: support the property 'focused'
* osc: re-initialize when chapter list changes
* recorder: fix codec_tag / codec_id confusion
* recorder: clear codec_tag if no target format support
* af_scaletempo2: use gcc vectors to speed up inner loop
* vo_gpu: replace --icc-contrast by --icc-force-contrast
* wayland: shuffle around the render loop again
* wayland: send VO_EVENT_DPI on output event as well
* command: add a missing comma to MP_EVENT_WIN_STATE
* vo_gpu: fix extreme clipping with --gamut-clipping for HDR outputs
* wayland: simplify render loop
* player/command: add secondary-sub-text property
* sub/osd: hide secondary subtitles if secondary-sub-visibility is false
* vo_gpu: hwdec_vaapi: silence errors while probing
* stream_lavf: remove uninitialized http_like array
* osxbundle: fix slow and wasteful memory allocation
* stream_file: disable read ahead for remote files on macOS
* build: move mingw jobs to Github actions
* build: move website rebuild into Linux/clang travis job
* Fri May 14 2021 ismail@i10z.com
- Update to version 0.33.1+git.20210511T222233.ded36a4470:
* options: add some entries to --display-tags defaults
* ytdl_hook: expose some JSON fields as tags
* edl: add a way to add tags
* zsh completion: perform globbing on binary path
* vo_gpu: fix trivial memory leak
* Revert "vo_gpu: revert 8a09299 and conditionally clear framebuffer again"
* vf_sub: restore OSD if removed
* options: extend --replaygain-preamp range
* audio: fix replaygain being completely broken
* Revert "audio: set audio chain ao on reinit"
* mac: add support for display-width/display-height property
* command: add display-width/display-height property
* DOCS/input.rst: clarify --no-input-default-keybindings docs
* filter_kernels: fix quadric window
* DOCS/lua.rst: fix docs for utils.file_info
* build: address AVCodec, AVInputFormat, AVOutputFormat const warnings
* scripting (lua/js): utils.getpid: make wrapper of pid property
* command: new property: pid (process id)
* DOCS: clarify how client/script names work
* command: osd-dimensions: return ints and doc fixes
* audio: add two minor log messages
* ao/pulse: fix incorrect state reported after reset
* osc: reset margins when using boxvideo with showfullscreen/showwindowed
* wayland: ignore toplevel listener if geometry is 0
* osc: display immediately when visibility changes from never to always
* mac: fix window geometry calculation on secondary screens
* stream_file: add new identifier for macOS FUSE filesystems
* DOCS: mpv.rst: minor escaping clarifications
* win32: fit_window_on_screen: simplify, add comments
* win32: fit_window_on_screen: centralize logic (no-op)
* win32: fit_window_on_screen: ensure top edge is inside
* options: win32: ignore and deprecate --fit-border
* demux_lavf: fix minor memory leaks
* vo_gpu: greatly increase maximum shader cache size
* wayland: workaround hidden state detection badness
* audio: set audio chain ao on reinit
* wayland: update geometry + cursor on output event
* Tue Apr 13 2021 idoenmez+factory@suse.de
- Update to version 0.33.1+git.20210412T140928.74f5d4940e:
* wayland: support the display-hidpi-scale property
* demux: undeprecate --cache-secs
* audio/aframe: reuse data buffer if less than 8 channels
* stream: turn stream_info.open2's args argument const
* stream_slice: fix use-after-free if inner stream fails to open
* player/scripting: fix use-after-free when loading script folders
* stream_mf: set correct stream origin
* demux_mf: improve format string processing
* manpage: fix a typo in the --aid option note
* vo_gpu: adjust interpolation_threshold's default
* options: Add validation macro for int type
* demux: Move demuxer help to new standard mechanism
* options: Make validation and help possible for all option types
* Tue Mar 23 2021 idonmez@suse.com
- Update to version 0.33.0+git.20210321T171820.6265724f33:
* vo_gpu: placebo: keep track of texture sample mode
* stats.lua: include a filter's @label when displaying filters on page 1
* ao_oss: add this audio output again
* audio: prevent uninit_audio_out during encoding
* stream_lavf: add support for Gopher over TLS.
* ao/pulse: signal the mainloop when ops are done
* player/command: add albumart argument to video-add
* player/{core,loadfile}: make cover art loading more explicit
* ao/pulse: wait for command completion when setting volume or mute
* ytdl_hook: fix crash on missing track bitrate
* umpv: Use generator expression for files
* wayland: no mouse dragging in fullscreen/maximized
* manpage: mention rotate limitations with hwdec
* vd_lavc: wrap use of deprecated AVCodecContext.thread_safe_callbacks in #if
* manpage: video-rotate supports arbitrary steps
* mac: fix traditional fullscreen on macOS 11
* mac: remove an unused variable
* Fri Mar 12 2021 ???? ?????? <ilya@ilya.pp.ua>
- Added JS scripting support (mujs) for Tumbleweed and Leap > 15.3.
* Thu Feb 25 2021 idonmez@suse.com
- Update to version 0.33.0+git.20210223T124404.09d7c75bfe:
* vo_gpu: libplacebo: require v2.72.0
* appveyor: Use MSYS2's spirv-cross package instead of building it
* appveyor: use latest build image for fixed MSYS2 installation
* msg: fix really-quiet option to only affect terminal output
* mac: add ability to toggle visibility on all workspaces from menubar
* command: add label for on-all-workspaces command
* mac: support --on-all-workspaces option
* vo_gpu: don't abort() if plane tex creation fails
* filters/auto_filters: switch from scaletempo to scaletempo2
* af_scaletempo2: fix crash for speed >= 16
* travis: fix macOS VMs with older homebrew versions
* mac: only update touch bar items when necessary
* mac: use custom touch bar item and slider instead of a touch bar slider
* vo_gpu: vaapi: export plane pitch properly
* DOCS: fix cplugins information in libmpv.rst.
* demuxer/demux_mf: add support for more image codecs
* man: update deband-threshold default
* vo_gpu: lower default deband threshold
* vo_wlshm: support big endian systems
* README: update libass dependency harfbuzz as non-optional
* manpage: fix PDF build
* docs: Fix an old style parameter reference
* umpv: remove unused imports
* stream_lavf: support rtsps
* player: make resetting of track selection to "auto" work
* mac: fix dangling pointers
* mac: drop build support for swift versions earlier than version 4.1
* mac: fix usage of temporary pointers
* manpage: document off-by-one loop-file behavior
* Sun Jan 03 2021 idonmez@suse.com
- Update to version 0.33.0+git.20210103T120530.1251f7bbf9:
* manpage: rename OS X references to macOS
* vo_gpu: don't segfault if 3DLUT texture fails uploading
* input.conf syntax: support custom quotes !XstringX!
* input.rst: fix typo commands -> arguments
* csputils: add mappings for DCI-P3 (ST.431-2) and P3-D65 (ST.432-1)
* vd_lavc: add VP8 to the default allowed hwdec codec list
* vo_gpu: cast bvecN to vecN for mix() on older GLSL
* bootstrap: log caught URLError
* Revert "build: recognize Lua 5.1 on Arch Linux"
* build: fail configure if --lua is specified and Lua isn't found
* Mon Dec 21 2020 idonmez@suse.com
- Update to version 0.33.0+git.20201220T105748.1ba5dc84ca:
* wayland: support multiple modifiers
* mac: fix type mismatch Int instead of Int32
* mac: use visible frame rectangle for window geometry calculation
* mac: fix a window positioning bug when exiting fullscreen
* appveyor: use MSYS2 shaderc package
* vo_wlshm: support presentation time
* wayland: unify frame/presentation callback code
* x11: update geometry/autofit opts on runtime
* wayland: update geometry/autofit opts on runtime
* console: use wl-paste on Wayland
* wayland: remove unused function declaration
* auto_profiles: fix compile_cond on lua 5.1
* build: recognize Lua 5.1 on Arch Linux
* manpage: document background transparency
* manpage: clarify that you can prefetch m3u8 urls
* wayland: handle multiple outputs more correctly
* vo_gpu: revert 8a09299 and conditionally clear framebuffer again
* mac: support screen-name and fs-screen-name opts
* wayland: support fs-screen-name option
* x11: support screen-name and fs-screen-name opts
* player: add --screen-name and --fs-screen-name
* manpage: clarify profile-cond requires underscores
* build: restore support for non-pkgconfig zlib
* build: use pkg-config for zlib
* vo_gpu: placebo: update for upstream API changes
* vo_sixel: don't divide by zero on small terminal
* vo_sixel: re-fit image on terminal resize
* vo_sixel: refactor of resize, reconfig (no-op)
* vo_sixel: Update description string of vo driver
* csputils: add MP_CHROMA_TOPLEFT
* Mon Nov 30 2020 idonmez@suse.com
- Update to version 0.33.0+git.20201129T160245.f16c6472a1:
* travis: use newer 10.15 VM with newer xcode
* travis: fix macOS 10.13 build
* vo_sixel: don't leak the frame reference
* vo_tct: don't leak the frame reference
* vo_tct: remove unused variable
* player: allow vo to be switched at runtime
* demux: add function to refresh a track without (de-)selecting it
* vo_sixel: use draw_frame instead of draw_image
* vo_sixel: skip testdither init in fixed palette
* vo_sixel: Update libsixel constant values
* matroska.py: remove python2 support
* bootstrap.py: remove all python2 support
* vo_sixel: change default dither to "auto"
* vo_sixel: fix the image corruption with mlterm
* vo_sixel: support --vo-sixel-exit-clear[=yes]
* terminal: process input when foregrounded
* Sun Nov 22 2020 idonmez@suse.com
- Update to version 0.33.0+git.20201122T184820.fa7afc3e19:
* Update VERSION
* Release 0.33.0
* file2string: remove question mark from safe chars
* Revert "options: disable vsfilter blur compat by default"
* build: always run waf with python3
* build: fix macOS arm builds
* vo_sixel: draw osd on the output frame
* vo_sixel: return -1 instead of SIXELSTATUS on failure
* vo_sixel: set --vo-sixel-fixedpalette=yes by default
* vo_sixel: Add aspect ratio based output centering
* vo_sixel: rename all user options with opt_ prefix
* vo_sixel: set output resolution based on terminal_get_size2
* osdep/terminal: Add function to get terminal pixel dimensions
* doc: split BNF definitions of <command> and <argument> in separate lines
* manpage: document improved --playlist security
* Tue Nov 17 2020 idonmez@suse.com
- Update to version 0.32.0+git.20201116T202958.24d6961833:
* command: mouse: generate MOUSE_{ENTER,LEAVE} if required
* docs/input.rst: document the mouse-pos property
* command: mouse-pos property: add field "hover"
* lua/js: mp.get_mouse_pos: use the mouse-pos property
* command: new property: mouse-pos
* command: add internal INPUT_PROCESSED event
* path: do not use old_home for win32 exe dir
* js: report scripts CPU/memory usage statistics
* ci: fix mingw build by adding harfbuzz
* command: make subtitle time properties observable
* manpage: properties fixes
* manpage: document the property-change event
* manpage: document video-frame-info sub-properties
* manpage: remove redundant "Return(s) "
* manpage: document demuxer-cache-state better
* manpage: be consistent with booleans
* vo_sixel: Add fallback terminal width and height
* vo_sixel: Add checks to prevent null pointer dereferencing.
* ao_alsa: handle -EPIPE XRUNs from snd_pcm_status
* ao_alsa: always initialize state if passed
* wayland: fix buffer overrun in get_mods
* wayland: check for modifier keys on pointer events
* Revert "wayland: conditionally commit surface on resize"
* DOCS: correct interface-changes.rst
* mac: make focus property observable
* video/out/vo_sixel.c: Implement sixel as a output device
* manpage: document av1 addition to --hwdec-codecs default setting
* vd_lavc: add AV1 to the default allowed hwdec codec list
* player: fix external cover file prioritization
* input.conf: add default keybindings for sub-scale
* console: let type set the cursor position
* ytdl_hook: if ytdl not found in config dirs, use ytdl_path as is
* ytdl_hook: support alternative youtube-dl path
* player: reorder list of external cover files for optimal results
* build: disable wayland if linux/input-event-codes.h isn’t available
* wayland: use more specific input codes header
* demux_lavf: initialize ReplayGain data
* command: add delete-watch-later-config
* vo_gpu: improve gamut warning bounds checks
* wayland: don't use presentation time if ust is 0
* Mon Oct 19 2020 idonmez@suse.com
- Update to version 0.32.0+git.20201016T174805.cbbdb3fae4:
* stats: display hw pixel format too
* command: expose underlying pixfmt for hwdec
* manpage: Document behaviour of *nix configuration directories
* build: bump waf to 2.0.20
* stream_lavf: enable SRT protocol support through FFmpeg
* vo_gpu: fix segfault when updating render opts
* vo_gpu: EGL: hack for alpha on different platforms
* wayland: update opaque region on runtime
* vo_gpu: update render options on runtime
* wayland: be less strict about when to render
* docs: fix simple typo, unminimze -> unminimize
* DOCS: fix typo on sub-filter-regex-enable
* manpage: reference standard for configuration file location
* Fri Oct 09 2020 idonmez@suse.com
- Update to version 0.32.0+git.20201008T111710.16b44d93f7:
* Revert "demux: add a POS"
* player: fix another nightmarish corner case
* demux: add a POS
* Revert "wayland: add wayland-display-socket option"
* wayland: add wayland-display-socket option
* screenshot: add --screenshot-sw option
* Sat Oct 03 2020 idonmez@suse.com
- Update to version 0.32.0+git.20201001T111222.34b8adc456:
* wayland: set an opaque region
* options: fix --cover-art-file typo
* player: cosmetically change around some code
* player: add automatic loading of external cover art files
* player: let frontend decide whether to use cover-art mode
* ci: fix spirv-cross build in mingw scripts
* mac: add support for the focused property
* mac: add an option to prevent focusing of the window on open
* Tue Sep 22 2020 idonmez@suse.com
- Update to version 0.32.0+git.20200922T130339.c535dfed66:
* travis: fix macOS 10.12 legacy build
* wayland: only render if we have frame callback
* player: add pause state to playback start message
* terminal: fix segfault when backgrounding
* f_decoder_wrapper: make log prefix less verbose
* audio: take paused state into account in ao_start()
* audio: move start() calls outside of lock
* mac: add an option to change the App activation policy
* mac: add ontop window level for desktop
* options: simplify --android-surface-size handling
* build: disable GLX
* manpage: fix console keybindings punctuation
* msg: make --msg-time show time in seconds
* build: sort dependencies (to make build deterministic)
* command, demux: make drop-buffers reset state even harder
* terminal: attempt to handle the ESC key
* client API: update alignment requirements for software rendering
* sws_utils: work around libswscale corrupting memory yet again
* manpage: refer to --sub-color for colors
* manpage: mark file-local-options as writable
* stream_slice: interpret `end` as offset if it starts with '+'
* Mon Sep 14 2020 idonmez@suse.com
- Update to version 0.32.0+git.20200912T130313.49f5c9b482:
* command: add property track-list/N/main-selection
* player: fix inconsistent AO pause state in certain situations
* player: some minor code golf
* vo_vdpau: remove an unused variable
* player: clamp relative seek base time to nominal duration
* manpage: "fix" some formatting
* terminal-unix: attempt to support more CTRL
* vo_vdpau: remove deprecated/inactive --vo-vdpau-deint option
* command: add read-only focused property
* manpage: fix typo
Version: 0.32.0+git.20200301T004003.e7bab0025f-bp152.2.3.1
* Mon Jan 04 2021 idonmez@suse.com
- Revert to version 0.32.0+git.20200301T004003.e7bab0025f:
* Add back BR on libsmclient-devel
* Pass --enable-libsmbclient to restore samba functionality without
ffmpeg boo#1173726
* Mon May 25 2020 idonmez@suse.com
- Update to version 0.32.0+git.20200525T015437.b83bdd1d17:
* See https://github.com/mpv-player/mpv/compare/82ded968aa..b83bdd1d17
for the complete changelog.
* Mon May 18 2020 idonmez@suse.com
- Update to version 0.32.0+git.20200518T015720.82ded968aa:
* See https://github.com/mpv-player/mpv/compare/cae2ffb6eb..82ded968aa
for the complete changelog.
* Sat May 02 2020 idonmez@suse.com
- Update to version 0.32.0+git.20200501T204851.cae2ffb6eb:
* See https://github.com/mpv-player/mpv/compare/027ae815ec..cae2ffb6eb
for the complete changelog.
* Tue Apr 28 2020 idonmez@suse.com
- Update to version 0.32.0+git.20200426T233854.027ae815ec:
* See https://github.com/mpv-player/mpv/compare/a09c7691d7..027ae815ec
for the complete changelog.
* Wed Apr 22 2020 Ismail Dönmez <idonmez@suse.com>
- Add BR on pkgconfig(ffnvcodec) to enable CUDA support
* Mon Apr 20 2020 idonmez@suse.com
- Update to version 0.32.0+git.20200418T001652.a09c7691d7:
* See https://github.com/mpv-player/mpv/compare/5824ac7d36..a09c7691d7
for the complete changelog.
* Thu Apr 02 2020 idonmez@suse.com
- Update to version 0.32.0+git.20200402T120653.5824ac7d36:
* See https://github.com/mpv-player/mpv/compare/28ea1ed296..5824ac7d36
for the complete changelog.
* Sat Mar 07 2020 idonmez@suse.com
- Update to version 0.32.0+git.20200307T135520.28ea1ed296:
* See https://github.com/mpv-player/mpv/compare/e7bab0025f..28ea1ed296
for the complete changelog.
- Remove smbclient BR, samba support is now provided via ffmpeg
* Sun Mar 01 2020 idonmez@suse.com
- Update to version 0.32.0+git.20200301T004003.e7bab0025f:
* See https://github.com/mpv-player/mpv/compare/ee6ad403a7..e7bab0025f
for the complete changelog.
* Sat Feb 22 2020 idonmez@suse.com
- Update to version 0.32.0+git.20200222T142106.ee6ad403a7:
* See https://github.com/mpv-player/mpv/compare/36ca0e0030..ee6ad403a7
for the complete changelog.
* Mon Feb 17 2020 idonmez@suse.com
- Update to version 0.32.0+git.20200217T003119.36ca0e0030:
* See https://github.com/mpv-player/mpv/compare/5bf433b16f..36ca0e0030
for the complete changelog.
* Thu Feb 13 2020 idonmez@suse.com
- Update to version 0.32.0+git.20200213T013258.5bf433b16f:
* See https://github.com/mpv-player/mpv/compare/6799f8e0e9..5bf433b16f
for the complete changelog.
* Sun Feb 09 2020 idonmez@suse.com
- Update to version 0.32.0+git.20200208T095058.6799f8e0e9:
* See https://github.com/mpv-player/mpv/compare/cbee577d0a..6799f8e0e9
for the complete changelog.
* Tue Feb 04 2020 hpj@urpla.net
- Update to version 0.32.0+git.20200203T191344.cbee577d0a:
* See https://github.com/mpv-player/mpv/compare/f304a79935..cbee577d0a
for the complete changelog.
- switch time tag in version to (much more comprehensible) iso format
* Sun Feb 02 2020 idonmez@suse.com
- Update to version 0.32.0+git.1580606151.f304a79935:
* See https://github.com/mpv-player/mpv/compare/cbfcd3e703..f304a79935
for the complete changelog.
* Mon Jan 27 2020 idonmez@suse.com
- Update to version 0.32.0+git.1580083289.cbfcd3e703:
* See https://github.com/mpv-player/mpv/compare/01de2a9bd5..cbfcd3e703
for the complete changelog.
* mpv now generates its own bash-completion file
* Sat Jan 18 2020 Martin Herkt <9+suse@cirno.systems>
- Run spec-cleaner
- Conflict with broken versions of mpv-plugin-mpris
* Sat Jan 11 2020 Luigi Baldoni <aloisio@gmx.com>
- Update mpv-bash-completion to 3.3.18
* Fix crash with mpv > 0.31.0
* Sat Dec 28 2019 idonmez@suse.com
- Update to version 0.31.0+git.1577540072.01de2a9bd5:
* See https://github.com/mpv-player/mpv/compare/1caa653f2d..01de2a9bd5
for the complete changelog.
Version: 0.29.1-bp151.4.2
* Thu Nov 22 2018 Tomá? Chvátal <tchvatal@suse.com>
- Add vulkan dependency per bsc#1115120
* Fri Oct 26 2018 jslaby@suse.com
- enable tv
* Tue Oct 02 2018 Martin Herkt <9+suse@cirno.systems>
- Update to version 0.29.1
Fixes and minor enhancements:
* af_rubberband: Fix for A-V drift on seeking.
* ao_alsa: Fixes to remove spam during pausing and end-of-file.
* ao_jack: Fix for mpv attempting to connect to non-standard devices such as MIDI.
* ao_openal: Drop support for Apple's bundled OpenAL due to lack of features to successfully build.
* ao_pulse: Fix for audio buffer length calculation.
* demux_lavf: Fix EDL playback of certain DASH streams.
* demux_lavf: Mark v4l streams as not seekable.
* demux_raw: Fix for gapless playback from raw audio input.
* drm_atomic: Fix to enable video output with devices without a video overlay plane.
* encode: Fix for crashes in case of failure to write to output.
* encode: Fix for encoding when utilizing lavfi-complex.
* Fix to strip HDR peak metadata if attached to SDR video (#6111)
* manpage: Misc fixups.
* stream_{smb,file}: Fix for partial writes to buffers.
* stream_libarchive: Fix hang when an out-of-bound seek happens.
* stream_smb: Fix for crashes due to libsmbclient and threading (#5936).
* vo_gpu: Fix for corruption when multiple compute shaders override each others' block sizes (#6083).
* ytdl_hook: Always load "ytdl://" URLs with ytdl_hook first.
* ytdl_hook: Fix audio streams not being picked up for some sites.
* Sun Jul 22 2018 aloisio@gmx.com
- Update to version 0.29.0
* This release requires FFmpeg 4.0 or newer.
Added features:
* ao/openal: Add better sample format and channel layout
selection
* ao/openal: Add support for direct channels output
* cocoa-cb: initial implementation via opengl-cb API
* context_drm_egl: Introduce 30bpp support (requires Mesa
18.0.0_rc4 or later)
* osx: add some more menu bar items as suggested by Apples's
HIG
* vo_gpu: make screenshots use the GL renderer (#5498, #5240)
* x11: support Shift+TAB as an input key bind (#5849)
* ytdl_hook: support native dash demuxer, if present
Changed features
* ao_alsa, ao_pulse: reduce requested buffer size
* audio: change format negotiation, remove channel remix
fudging
* client API: deprecate opengl-cb API and introduce a
replacement API
* demux: lower demuxer cache default sizes from 400MB/400MB to
50MB/150MB
* osx: always deactivate the early opengl flush on macOS
* scripting: change when/how player waits for scripts being
loaded
* vo_gpu: various improvements to HDR peak detection
* vo_gpu: various improvements to HDR tone mapping
* wayland_common: update to stable xdg-shell
* ytdl_hook: parse youtube playlist urls to set start index if
`--ytdl-raw-option=yes-playlist=` is specified
Deprecated features:
* af_lavrresample: deprecate this filter
Removed features:
* build: drop support for SDL1 (only applied to ao_sdl)
Added options and commands:
* add a number of --audio-resample-* options, which should
from now on be used instead of --af-defaults=lavrresample:
* ao/openal: --openal-direct-channels
* command: add --osd-on-seek option defaulting to bar
* command: add a change-list command (#5435)
* options: add --http-proxy
* options: add a builtin low-latency profile
* vaapi: add option to select a non-default device path with
- -vaapi-device (#4320)
* video: add option to reduce latency by 1 or 2 frames
* vo_gpu: introduce --target-peak (#5521)
Changed options and commands:
* command: change cycle-value command behavior (#5772)
* config: replace config dir lua-settings/ with dir
script-opts/
* options: --lavfi-complex now requires uniquely named filter
pads.
* options: --ytdl is now always enabled, even for libmpv
* options: make --deinterlace=yes always deinterlace (#5219)
* options: slightly improve filter help output for lavfi bridge
* vo: rename --vo=opengl-cb to --vo=libmpv
Deprecated options and commands:
* encoding: deprecate a bunch of obscure options (--ovoffset,
- -oaoffset, --ovfirst, --oafirst)
* options: deprecate --vf-defaults and --af-defaults
* osx: --gpu-context=cocoa with --gpu-api=opengl is now
deprecated in favour of --vo=libmpv
Removed options and commands:
* command: remove an old compatibility hack that allowed CLI
aliases to be set as property, deprecated in 0.26.0
* input: remove legacy command handling for MPlayer commands
that were deprecated in 2013
* options: drop --opensles-sample-rate, as --audio-samplerate
should be used if desired
* options: drop deprecated --videotoolbox-format, --ff-aid,
- -ff-vid, --ff-sid, --ad-spdif-dtshd, --softvol options
* options: remove --video-stereo-mode
* options: remove deprecated ao/vo auto profiles
* options: remove the following encoding options: --ocopyts
(now the default, old timestamp handling is gone), --oneverdrop
(now default), --oharddup (you need to use --vf=fps=VALUE),
- -ofps, --oautofps, --omaxfps
Fixes and minor enhancements:
* HIDRemote: fix volume buttons on macOS 10.13 (#5721)
* TOOLS/autoload: Fix broken "disabled" option
* TOOLS/autoload: be more robust with slow directory listings
(#5618)
* ao_sdl: fix default buffer size
* build: add static libraries to libmpv.pc
* build: bump waf to 2.0.9 (fixes Python 3.7 compatibility)
* build: manually add standard library search paths for
linking (#5791)
* common: round all integer times to milliseconds
* demux, player: fix playback of sparse video streams (w/
still images)
* demux: support for some kinds of timed metadata (e.g. ICY)
* demux_mkv: add V_AV1 identifier for AV1
* demux_mkv: support Meridian Lossless Packing in Matroska
(#5923)
* display additional metadata tags during video playback
* drm_atomic: Fix memory leaks in drm_atomic_create
* enable cache for FUSE filesystems on OpenBSD and FreeBSD
* gpu: prefer 16bit floating point FBO formats to 16bit
integer ones
* hwdec_vaegl: Fix VAAPI EGL interop used with gpu-context=drm
* input.conf: use exact value for [ binding, which does the
inverse of ]
* input: add a keybinding to toggle hardware decoding
* input: minor additions to default key bindings (#973)
* osc: fix accidentally skipping files when seeking with slider
* player: fix strange behavior on edition switching
* player: fix track autoselection of external files yet again
* terminal-unix: stop trying to read when terminal disappears
(#5842)
* video: actually wait for last frame being rendered on EOF
* video: fix --video-rotate in some cases
* video: fix crash with vdpau when reinitializing rendering
(#5447)
* vo_gpu: fix anamorphic screenshots (#5619)
* vo_vdpau: fix resizing and rotation problems
- Refreshed mpv-make-ffmpeg-version-check-non-fatal.patch
- Bumped waf to 2.0.9
- Enable wayland only for Tumbleweed due to version constraints
* Sat Jun 02 2018 aloisio@gmx.com
- Updated mpv-bash-completion to 3.3.17
* Added the ability to filter media file completion suggestions
by multimedia file extensions (see README).
Bug fixes:
* --show-profile argument completion now suggests the list of
existing profile names.
* Mon May 21 2018 9+suse@cirno.systems
- Drop libguess from BuildRequires (unused)
- Actually use optflags for build
* Sat Apr 21 2018 aloisio@gmx.com
- Update to version 0.28.2
Added features:
* Add DRM_PRIME Format Handling and Display for RockChip MPP
decoders
* csputils: Add support for Display P3 primaries
* demux: support multiple seekable cached ranges, display
cache ranges on OSC
* demux_playlist: support .url files (#5107)
* dvb: Add multiple frontends support (up to 8)
* dvb: implement parsing of modulation for VDR-style channels
config
* hwdec: add mediacodec hardware decoder for IMGFMT_MEDIACODEC
frames,
* rename mediacodec to mediacodec-copy
* lua: integrate stats.lua script (bound to i/I by default)
* vd_lavc: add support for nvdec hwaccel
* vo_gpu: add android opengl backend
* vo_gpu: initial d3d11 support
* vo_gpu: vulkan support
Removed features:
* af: remove deprecated audio filters (channels, equalizer,
pan, volume;
* replacements in lavfi)
* vf: remove most GPL video filters (crop, dsize, expand,
flip, gradfun, mirror,
* noformat, pullup, rotate, scale, stereo3d, yadif;
replacements in lavfi)
* vf_buffer: remove this filter
* video: remove automatic stereo3d filter insertion
* vo_gpu: remove hwdec_vaglx interop
* vo_opengl: refactor into vo_gpu
* vo_wayland: remove
Added options and commands:
* demux: add option to create CC tracks eagerly
(--sub-create-cc-track)
* options: add --start=none to reset previously set start time
* options: add --vlang switch
Changed options and commands:
* cache: lower default size to 2*10MB
* demux: bump the demuxer cache readahead duration to 10 hours
* demux: use seekable cache for network by default, bump
prefetch limit
* msg: make --msg-level affect --log-file too
* player/misc.c: allow both --length and --end to control play
endpoint
* player: match subtitles with language tags with
- -sub-auto=exact
* rename --opengl-hwdec-interop to --gpu-hwdec-interop (now
mostly useless)
* vd_lavc: prefer nvdec over vdpau with --hwdec=auto (better
codec and surface
* format support)
* vd_lavc: rename --hwdec=rpi to --hwdec=mmal
Removed options and commands:
* options: remove --heartbeat-cmd and --heartbeat-interval
* (incidentally fixes #4888)
Fixes and Minor Enhancements
* TOOLS/autoload.lua: add ogm, ogg and opus extensions
* Use /dev/tty instead of stdin for terminal input (#4190)
* audio: add audio softvol processing to AO (replaces
previously GPL?d code)
* audio: fix channel conversion with NA channels (e.g. with
ALSA)
* audio: fix missing volume update on init and reinit
* csputils: Fix DCI P3 primaries white point
* demux: don't allow subtitles to mess up buffered time display
* demux: fix .cue files with audio files that contain attached
pictures
* demux: fix accounting for seekable ranges on track switches
(fixes missing
* audio when cycling through audio tracks with e.g. EDL,
- -merge-files, ordered
* chapters and youtube-dl pseudo DASH)
* demux: fix crash with cue/ordered chapter files (#5027)
* demux: speed up cache seeking with a coarse index
* demux_lavf: always give libavformat the filename when probing
* (helps with mp3 files)
* demux_mkv: add V_SNOW tag to mkv_video_tags
* dvb: Fix long channel switching: next/prev channel
* dvb: fixes for ATSC tuning
* lavc_conv: clamp timestamps to positive (#5047)
* mp_image: always copy color attributes on hw download (#4804)
* mp_image: select an explicit fallback for chroma location
(#4804)
* msg: bump log level of --log-file to -v -v
* msg: reinterpret a bunch of message levels
* osc: fix rare stack overflow when changing visibility mode
* osdep/io: add android-related bullshit to fix files >2 GiB
* player/playloop.c: respect playback start time when using
- -loop-file
* player: allow seeking in cached parts of unseekable streams
* player: make track language matching case insensitive (#5272)
* player: use start timestamp for ab-looping if --ab-loop-a is
absent
* player: when loading external file, always add all track
types (#5132)
* restore-old-bindings.conf: add old macOS/Wayland AXIS
bindings
* screenshot: create directories from template
* scripting: report dlerror() output
* sd_ass: accept RFC8081 font media types
* sd_ass: accept otc as fallback OpenType collection file
extension
* stream_libarchive: work around various types of locale
braindeath
* (https://git.io/vbiFJ)
* subprocess-win: don't change the mouse cursor when creating
processes
* video: add a hack to avoid missing subtitles with vf_sub
(#5194)
* video: fix alpha handling (#4983)
* video: fix memory leaks (roughly 1 KB per decoded frame)
with hwdec copy modes
* video: fix rotation and deinterlace auto filters
* video: properly pass through ICC data
* vo: add support for externally driven renderloop and make
wayland use it
* (partially fixes display-sync under wayland; disables
rendering when window
* is invisible)
* vo_gpu: change --tone-mapping-desaturate algorithm
* vo_gpu: enable 3DLUTs in dumb mode
* vo_gpu: fix gamma scale
* vo_gpu: fix mobius tone mapping compatibility to GLSL 120
(#5069)
* vo_gpu: fix video sometimes not being rerendered on
equalizer change
* vo_gpu: kill off FBOTEX_FUZZY (#1814)
* vo_gpu: opengl: fix possible screenshot window crash (#4905)
* vo_gpu: opengl: use GLX_MESA_swap_control where available
* vo_gpu: reduce the --alpha=blend-tiles checkerboard intensity
* vo_gpu: win: remove exclusive-fullscreen detection hack
* vo_lavc: remove messy delayed subtitle rendering logic
(#4689)
* wayland_common: implement output tracking, many cleanups and
bugfixes
(#4711)
* ytdl_hook: don't prepend ytdl:// to non-youtube links in
playlists (#5003)
- Refreshed mpv-make-ffmpeg-version-check-non-fatal.patch
- Dropped mpv-vaapi2.patch (no longer necessary)
Version: 0.27.2-bp150.1.3
* Tue Mar 20 2018 tchvatal@suse.com
- Do not enable smbclient twice, it is in normal opts too
* Wed Feb 14 2018 aloisio@gmx.com
- Update to version 0.27.2
* This release contains an additional fix for CVE-2018-6360.
Fixes and Minor Enhancements
* ytdl_hook: whitelist subtitle URLs as well (#5456)
* Sat Feb 10 2018 aloisio@gmx.com
- Update to version 0.27.1
* This release fixes CVE-2018-6360 (boo#1077894)
Fixes and minor enhancements
* ytdl_hook: whitelist protocols from urls retrieved from
youtube-dl (#5456)
* Mon Nov 27 2017 mpluskal@suse.com
- Enable vapoursynth support
* Sun Nov 19 2017 mpluskal@suse.com
- Explicitly enable more options
- Sync with changes from home:X0F:HSF
* Thu Nov 16 2017 dimstar@opensuse.org
- Add mpv-vaapi2.patch: Fix build iwth vaapi 2.0. The patch is a
backport of the commits 93c52b, f35126 and 2ecf24.
- Conditionalize use of %desktop_database_post/postun and
icon_theme_cache_post/postun to suse_version < 1330. The
functionality has since been replaced by file triggers and the
macros expand to %nil.
* Mon Nov 13 2017 schwab@suse.de
- Fix BuildRequires for lua51
* Thu Nov 02 2017 mpluskal@suse.com
- Explicitly use python3 when building
- Enable libva on wayland
* Tue Oct 24 2017 aloisio@gmx.com
- Update mpv-bash-completion to 3.3.16
* gen: make output reproducible by ensuring stable output of
pairs() by wrapping it where it matters. (Closes #18)
* Wed Sep 13 2017 aloisio@gmx.com
- Update to version 0.27.0
Added features:
* libmpv: options: add a thread-safe way to notify option updates
* vd_lavc/vo_opengl: support embedded ICC profiles
* vo: rendering API abstraction for future non-GL video outputs
* vo_opengl: add a gamut warning feature to highlight
out-of-gamut colors (--gamut-warning)
* vo_opengl: add direct rendering support (--vd-lavc-dr)
* vo_opengl: implement (faster) compute shader based EWA kernel
* vo_opengl: implement HLG OOTF inverse
* vo_opengl: support HDR peak detection (--hdr-compute-peak)
* vo_opengl: support float input pixel formats
* vo_opengl: support loading custom user textures (#4586)
* vo_opengl: support user compute shaders
Removed features:
* Remove video equalizer handling from vo_direct3d, vo_sdl,
vo_vaapi, and vo_xv (GPL, not worth the effort to support legacy
VOs)
Added options and commands:
* player: add --track-auto-selection option
Changed options and commands:
* input: use mnemonic names for mouse buttons, same as Qt:
https://doc.qt.io/qt-5/qt.html#MouseButton-enum
* options: change --loop semantics
* player: make --lavfi-complex changeable at runtime
* vf_eq: remove this filter (GPL; uses libavfilter?s eq filter
now, with changed semantics)
* video: change --deinterlace behavior
* vo_opengl: generalize HDR tone mapping to gamut mapping,
- -hdr-tone-mapping ? --tone-mapping
Removed options and commands:
* --field-dominance (GPL-only author, no chance of relicensing)
* input: drop deprecated "osd" command
* options: drop --video-aspect-method=hybrid (GPL-only)
Fixes and minor enhancements:
* TOOLS/autocrop.lua: fix cropdetect black limit for 10-bit
videos
* TOOLS/lua/autodeint: update to lavfi-bridge
* TOOLS/lua/status-line: improve and update
* af_lavrresample: don't call swr_set_compensation() unless
necessary (#4716)
* ao_oss: fix period_size calculation (#4642)
* ao_rsound: allow setting the host
* audio: fix spdif mode
* filter_kernels: correct spline64 kernel
* options: fix --include (#4673)
* player: fix --end with large values (#4650)
* player: fix confusion in audio resync code (#4688)
* player: make refresh seeks slightly more robust (#4757)
* player: readd smi subtitle extension (#4626)
* vd_lavc: change auto-probe order to prefer cuda over vdpau-copy
* vd_lavc: fix device leak with copy-mode hwaccels (#4735)
* vd_lavc: fix hwdec compatibility with yuvj420p formats
* vd_lavc: fix mid-stream hwdec fallback
* vf_vapoursynth: fix inverted sign and restore 10 bit support
(#4720)
* video: increase --monitorpixelaspect range
* vo_opengl: adjust the rules for linearization (#4631)
* vo_opengl: scale deband-grain to the signal range
* vo_opengl: tone map on the maximum signal component
* x11: fix that window could be resized when using embedding
(#4784)
* ytdl_hook: resolve relative paths when joining segment urls
(#4827)
* ytdl_hook: support fragments with relative paths, fixes
segmented DASH
* Wed Aug 23 2017 alarrosa@suse.com
- Let mpv own /etc/mpv/scripts as a ghost dir so other packages
can create it and install scripts there.
* Mon Aug 21 2017 tchvatal@suse.com
- Build only against luajit and not lua where possible
- Comment on why we depend on lua (for bash_completion generating)
- Explicitly enable libsmbclient
* Sun Aug 20 2017 aloisio@gmx.com
- Update mpv-bash-completion to 3.3.15
* Fix af/vf filter argument expansion (#15)
* Remove some invalid suggestions for some options (#14)
* Recognize all --profile-style options as such and complete
them
* Sat Aug 19 2017 aloisio@gmx.com
- Update mpv-bash-completion to 3.3.14
* Reflect changed --list-options output for --vf-add-style
options
- Update waf to 1.9.13
* Tue Aug 15 2017 dimstar@opensuse.org
- BuildRequire pkgconfig(lua5.1) instead of pkgconfig(lua-5.1): the
.pc files has been normalized to match other distributions.
* Wed Jul 19 2017 aloisio@gmx.com
- Fixed Leap build WRT lua
- Removed shebang from bash-completion script
* Tue Jul 18 2017 9@cirno.systems
- Packaging changes:
* Remove unnecessary build dependencies
* Explicitly enable DVD and DVB features
* Add libgbm, rubberband, uchardet
- Update to version 0.26.0
* Built-in V4L TV support is disabled by default.
av://v4l2 can be used instead.
* Support for C plugins is now enabled by default (#4491).
* Many more parts of the player are now licensed under LGPL,
see Copyright file.
Added features:
* csputils: implement sony s-gamut
* vo_opengl: add new HDR tone mapping algorithm
(mobius, now default)
* vo_opengl: hwdec_cuda: Support separate decode and display
devices
* vo_opengl: implement sony s-log1 and s-log2 trc
* vo_opengl: implement support for OOTFs and non-display referred
content
Removed features:
* vf_dlopen: remove this filter
Added options and commands:
* vo_opengl: add --tone-mapping-desaturate
* vo_opengl: support tone-mapping-param for `clip`
* ytdl_hook: add option to exclude URLs from being parsed
Changed options and commands:
* allow setting profile option with libmpv
* audio: move replaygain control to top-level options
* external_files: parse ~ in --{sub,audio}-paths
* options: change --sub-fix-timing default to no (#4484)
* options: expose string list actions for --sub-file option
* options: slight cleanup of --sub-ass-style-override
+ signfs ? scale
+ --sub-ass-style-override ? --sub-ass-override
* renamed the HDR TRCs `st2084` and `std-b67` to `pq` and `hlg`
respectively
* replace vf_format's `peak` suboption by `sig-peak`, which is
relative to the reference white level instead of in cd/m^2
* the following options change to append-by-default (and possibly
separator): --script
* video: change --video-aspect-method default value to `container`
Deprecated options and commands:
* m_option: deprecate multiple items for -add etc.
* player: deprecate "osd" command
* --audio-file-paths => --audio-file-path
* --sub-paths => --sub-file-path
* --opengl-shaders => --opengl-shader
* --sub-paths => --sub-file-paths
* the following options are deprecated for setting via API:
+ "script" (use "scripts")
+ "sub-file" (use "sub-files")
+ "audio-file" (use "audio-files")
+ "external-file" (use "external-files")
(the compatibility hacks for this will be removed after this
release)
Removed options and commands:
* chmap: remove misleading "downmix" channel layout name (#4545)
* demux_lavf: remove --demuxer-lavf-cryptokey option (#4579)
* input.conf: drop TV/DVB bindings
* options: remove remaining deprecated audio device selection options
+ --alsa-device
+ --oss-device
+ --coreaudio-exclusive
+ --pulse-sink
+ --rsound-host/--rsound-port
+ --ao-sndio-device
+ --ao-wasapi-exclusive
+ --ao-wasapi-device
* remove option --target-brightness
* remove property "video-params/nom-peak"
Fixes and minor enhancements:
* TOOLS/lua/autoload.lua: actually sort files case insensitive (#4398)
* TOOLS/lua/autoload.lua: ignores all files starting with "."
* ao_pulse: reorder format choice to prefer float and S32 over S16 as fallback format
* command: add missing change notification for playlist-shuffle (#4573)
* demux_disc: fix bluray subtitle language retrieval (#4611)
* demux_mkv: fix alpha with vp9 + libvpx
* demux_mkv: support FFmpeg A_MS/ACM extensions
* ipc-unix: don?t truncate the message on EAGAIN (#4452)
* ipc: raise json nesting limit (#4394)
* mpv_identify: replace deprecated fps property (#4550)
* options/path: fallback to USERPROFILE if HOME isn't set
* player: close audio device on no audio track
* player: fix potential segfault when playing dvd:// with DVD disabled (#4393)
* player: prevent seek position to jump around adjacent keyframes, e.g. when dragging the OSC bar on short videos (#4183)
* vo_opengl: bump up SHADER_MAX_HOOKS and MAX_TEXTURE_HOOKS to 64
* vo_opengl: correct off-by-one in scale=oversample
* vo_opengl: do not use vaapi-over-GLX (#4555)
* vo_opengl: fall back to ordered dither instead of blowing up (#4519)
* vo_opengl: tone map in linear XYZ instead of RGB
* x11: add 128x128 sized icon support
* ytdl_hook: add a header to support geo-bypass
* ytdl_hook: don't override start time set by saved state
* ytdl_hook: don't override user-set start time
* ytdl_hook: treat single-entry playlists as a single video
* Mon May 22 2017 tchvatal@suse.com
- Depend on lua-5.1 as 5.3 is incompatible wrt bsc#1040034
* Tue May 09 2017 tchvatal@suse.com
- Refresh patch mpv-make-ffmpeg-version-check-non-fatal.patch
* Rather delete the warning as whole, in OBS concept we detect
abi changes and it misleads the users of stable distributions
to worry something broke
* Tue May 02 2017 tchvatal@suse.com
- Remove the pdf build, it is same as manpage
- Switch to python3 subpkgs as we use python3 anyway (Fixes TW build)