I’m using Debian 12, Ryzen 7 5700X processor, and Radeon HD 5450 graphics card. I have tried uninstalling and reinstalling VLC but it didn’t resolve the issue. Here’s an excerpt from the VLC’s log file:
glconv_vaapi_x11 error: vaDeriveImage: operation failed
main error: video output creation failed
main error: failed to create video output
avcodec info: Using G3DVL VDPAU Driver Shared Library version 1.0 for hardware decoding
How do I resolve this issue?
Can you turn off hardware decoding and see if it works then?
I disabled hardware acceleration and VLC is able to play mp4 files again; however, is there a way to turn on hardware acceleration without getting these errors?
I’m not sure off-hand. It could be an issue in a graphics driver at the kernel (amdgpu?) or user level (mesa?). It could also be a problem in something higher up. I would recommend posting an issue in the VLC repo and see if you can get better support that way.
Maybe try a full update. Partial updates are problematic.
How do I do that?
sudo apt update && sudo apt upgrade
According to Debian Wiki VLC has limited support of va-api for hardware acceleration. Try fixes in the wiki. It might help.
Thank you, this resolved my issue.
I read the wiki and changed “Hardware-accelerated decoding” to “VA-API video decoder”.
My original problem was caused by the fact that this was set to automatic, now that it’s set to “VA-API video decoder” VLC is able to play mp4 files again without any issues.
On arch I would reinstall pipewire. Idk if there’s an apt equivalent
This is something in the libva/mesa hardware acceleration stack
Something is broken in your hardware acceleration stack, I’d check out the verification and troubleshooting sections here: https://wiki.archlinux.org/title/Hardware_video_acceleration.
The tiny excerpt from VLC you’ve included doesn’t give us enough info to see what’s broken but taking a wild stab at it I’d guess it’s libva, mesa or a regression in amdgpu. Take a look at the system journal as well as the VLC log, something in the library stack is probably throwing a more useful error than we’ve seen yet.