this post was submitted on 06 May 2024
31 points (94.3% liked)

Linux

47946 readers
1920 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

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?

top 20 comments
sorted by: hot top controversial new old
[–] [email protected] 14 points 5 months ago (1 children)
[–] [email protected] 10 points 5 months ago* (last edited 5 months ago) (1 children)

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?

Update:

Changing “Hardware-accelerated decoding” to “VA-API video decoder” fixed the issue. Now VLC is able to play mp4 files with hardware acceleration without any issues.

[–] [email protected] 5 points 5 months ago* (last edited 5 months ago)

I'm not sure off-hand since I'm not too familiar with VLC.

I would imagine 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.

[–] [email protected] 8 points 5 months ago* (last edited 5 months ago)

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 (and user journal) as well as the VLC log, something in the library stack is probably throwing a more useful error than we've seen yet.

[–] [email protected] 6 points 5 months ago* (last edited 5 months ago)

First, it never hurts to reboot. There could be some dumb state going on in your display server. Or kernel DRM. Or in some little bs microcontroller in the video card.

Next, read the arch wiki on hardware video acceleration. Contemplate the note(2) at the very bottom of the page and boggle at all the PPANAPAPPI acronyms bouncing around in there.

VLC has two major sides to its video settings, the (Video)output method and the (Input/Codecs)hardware-acceleration. You are on the VDPAU acceleration API, so give VAAPI a try for a bit. Remember you have to restart VLC before any change takes. VLC should be smart about choosing a good Automatic option, but it can't do much about "looks like an API's there, but it's broke".

Try mpv. Try VLC, but from Flatpak (which brings its own version of a lot of the acceleration libraries).

[–] [email protected] 3 points 5 months ago (1 children)

Did you happen to also update your video driver and not reboot?

[–] [email protected] 2 points 5 months ago (2 children)

I don't know if it updated my video driver. I just used this command: sudo apt update && sudo apt upgrade

[–] [email protected] 1 points 5 months ago

it has logs that show what it did

[–] refalo 1 points 5 months ago

If you restart and put the setting back to how it was, and it still works, then that's probably what happened.

[–] [email protected] 2 points 5 months ago (2 children)

Maybe try a full update. Partial updates are problematic.

[–] [email protected] 2 points 5 months ago (2 children)
[–] [email protected] 4 points 5 months ago* (last edited 5 months ago) (1 children)

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.

[–] [email protected] 5 points 5 months ago* (last edited 5 months ago)

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.

[–] [email protected] 2 points 5 months ago (1 children)

sudo apt dist-upgrade Then reboot?

(I think. Not an expert.)

[–] [email protected] 2 points 5 months ago* (last edited 5 months ago)

Tried it. I don't think there's anything to upgrade:

Jean-Luc@Enterprise:~$ sudo apt dist-upgrade
[sudo] password for Jean-Luc: 
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Calculating upgrade... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
[–] [email protected] 1 points 5 months ago
[–] refalo 1 points 5 months ago* (last edited 5 months ago)

Glad you got it resolved. FWIW This problem should have affected practically all video playback and not just mp4, so adding that part in and then trying to find reasons why ONLY mp4 wouldn't work... doesn't get someone very far in helping you :)

[–] [email protected] -1 points 5 months ago (1 children)

On arch I would reinstall pipewire. Idk if there's an apt equivalent

[–] [email protected] 2 points 5 months ago

This is something in the libva/mesa hardware acceleration stack

[–] [email protected] -2 points 5 months ago

Try Celluloid Flatpak. It is slim, perfectly packaged and uses MPV.

Saves you a lot of troubles.