-
Notifications
You must be signed in to change notification settings - Fork 151
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Bug]: AMF failed to initialise on the given Vulkan device: 1. on headless transcode job #518
Comments
Thanks for reporting. We will address this. |
@jpsollie Hey there, could you run the following command and attach the vulkaninfo_stdout.txt and vulkaninfo_stderr.txt files it creates? I'd like to see what vulkaninfo says when the system is in this bad state.
Could you also run your ffmpeg command with |
Sure, here you go Vulkaninfo_stdout_ffmpeg was empty, so not uploading ... |
Oh, I understand now. Based on the logs I see you're using gentoo. After doing some spelunking I see that when the X use flag is absent, media-libs/vulkan-loader will create a libvulkan.so.1 library without the vkCreateXlibSurfaceKHR symbol. This is unusual, as most distributions prebuild the vulkan loader with xlib support enabled, so we've only ever seen vkCreateXlibSurfaceKHR available on the systems we test. I'm not too familiar with gentoo, but perhaps you could build media-libs/vulkan-loader with the X use flag enabled? This might require you to install additional x11 headers so it can build. You don't need an x server running for AMF to transcode. |
that did it! |
I think this is necessary, yes. On our end, we could add a hack where we don't fail if Xlib-related vulkan symbols are missing, but since we don't test on any systems where this is the case, I am concerned this would just break again in the future if we add another xlib-specific symbol to our libvulkan.so loader code. I think it makes more sense for the distributions packaging to reflect what AMF needs directly. |
Actually, we discussed it within the team and since this symbol is only used in our samples, we can ignore it if it is missing and it won't cause a big problem, we'll just change our samples to check if its present. We will make this change internally. Until this change gets released in a new driver update, the runtime dependency you describe will be necessary. |
Thanks! Looking forward to it!
... and my kernel parameter panic=5 doesn't cause a reboot. This must be a kernel bug: there's no way a regular user can lockup just everything in the system by playing with amf vulkan libraries. I promise I'll create a new issue if I know what's going on ;) |
Hard to tell, pre-analysis works in general on Linux. You may want to try on supported distro first with TranscodeHW AMF sample. Debug level FFmpeg log would be helpful as well, but I guess we should start a different item here. |
when trying to transcode with h264_amf on a PC with no running graphics (X / wayland), AMF fails to initialize.
a sample of ffmpeg output:
using amdvlk 2024.2.1 driver
using amdgpu-pro amf 1.4.34.1787253
vulkaninfo works fine
The text was updated successfully, but these errors were encountered: