GPUOpen-LibrariesAndSDKs / AMF

The Advanced Media Framework (AMF) SDK provides developers with optimal access to AMD devices for multimedia processing
Other
584 stars 149 forks source link

Trouble installing AMF? #481

Open Tombert opened 1 month ago

Tombert commented 1 month ago

I know it's probably not directly supported, but any general advice would be helpful.

I am trying to install AMF transcoding support into NixOS. I installed this AMF stuff and compiled ffmpeg with the --enable-amf flag, and it compiled fine, but I'm getting this error:

[h264_amf @ 0xc3fa40] DLL libamfrt64.so.1 failed to open

Now I looked at the driver directory for the amdgpu-pro, and there exists a libamfrt64.so.0 file, which looks similar, so I copied all the files outta that folder and placed them into my home directory, symlinked libamfrt64.so.0 to libamfrt64.so.1 and pointed the ld library path variable to that folder. Then i got the the equally frustrating error of: AMF failed to initialise on the given Vulkan device: 1.

The amdgpu-pro version appears to be 21.30 (https://github.com/NixOS/nixpkgs/blob/9ddcaffecdf098822d944d4147dd8da30b4e6843/pkgs/os-specific/linux/amdgpu-pro/default.nix#L34), which I believe should be a supported version. Any ideas?

MikhailAMD commented 1 month ago

Older AMF runtime relies on AMD Pro Vulkan driver for many things including encoder. The message says that AMF cannot initialize this Vulkan driver. Verbose output from FFmpeg will provide AMF logs with more details but in the essence this Vulkan driver is not properly installed. Note, that AMF encoder would also need matching VCN firmware and Vulkan Pro driver may have own dependencies.