mpv
mpv copied to clipboard
Fullscreen video playback corrupted with vo=gpu, gpu-api=vulkan, RADV on Mesa 25.0.2
-> Upstream issue on drm/amd#4057 <-
mpv Information
mpv v0.40.0 Copyright © 2000-2025 mpv/MPlayer/mplayer2 projects
built on Mar 25 2025 17:58:20
libplacebo version: v7.349.0
FFmpeg version: n7.1
FFmpeg library versions:
libavcodec 61.19.100
libavdevice 61.3.100
libavfilter 10.4.100
libavformat 61.7.100
libavutil 59.39.100
libswresample 5.3.100
libswscale 8.3.100
Other Information
- Linux version: Arch Linux
- Kernel Version: 6.13.8-zen1-1-zen
- GPU Model: AMD Radeon RX 9070 XT [1002:7550]
- Mesa/GPU Driver Version: Mesa 25.0.2-arch1.2
- Window Manager and Version: kwin 6.3.3.1-1
- Source of mpv: [Arch repos](https://archive.archlinux.org/packages/m/mpv/mpv-1%3A0.40.0-1-x86_64.pkg.tar.zst)
- Latest known working version: None
- Issue started after the following happened: Upgraded mpv to 0.40.0-1
- Note: Tested with 0.39.0-5, same thing :(
Reproduction Steps
Play any video with --no-config --gpu-api=vulkan, then enter fullscreen. (Setting --hwdec does not change the result.)
Expected Behavior
The video plays normally.
Actual Behavior
Video playback is corrupted, but can temporarily show the correct image if the mouse cursor moves around the focused mpv window (or an unfocused one if the movement triggers an OSD redraw).
Attempts to record the corruption with OBS Studio + PipeWire capture are not successful, so I tried to record what happens with a phone.
Setting --gpu-api=opengl resolves this issue, but something's very wrong with Vulkan. The same corruption occurs on 0.39.0.
Log File
- vulkan.txt - corrupted output
- opengl.txt - good output
- vulkaninfo.txt - extra, extra
- System fully up-to-date and rebooted before testing. Everything works normally, hardware acceleration in the browser and games works fine.
Sample Files
Any video file triggers this, but the demo was recorded with this YouTube video downloaded with yt-dlp. The video codec does not appear to matter.
I carefully read all instruction and confirm that I did the following:
- [x] I tested with the latest mpv version to validate that the issue is not already fixed.
- [x] I provided all required information including system and mpv version.
- [x] I produced the log file with the exact same set of files, parameters, and conditions used in "Reproduction Steps", with the addition of
--log-file=output.txt. - [x] I produced the log file while the behaviors described in "Actual Behavior" were actively observed.
- [x] I attached the full, untruncated log file.
- [x] I attached the backtrace in the case of a crash.