VA-API broken on AMD
TheSunCat opened this issue · 5 comments
Hi! I'm using nixGL
and it works great. Thanks for maintaining this tool.
I noticed Firefox outputs an error about libva on my AMD laptop when launched with nixGL, and found that it exports LIBVA_DRIVERS_PATH
to paths that only contains Intel drivers (i965_drv_video.so
, i965_drv_video.la
, and iHD_drv_video.so
). When exporting LIBVA_DRIVERS_PATH=/lib/dri/
, the error goes away.
[apm@apg ~]$ vainfo
vaInitialize failed with error code -1 (unknown libva error),exit
[apm@apg ~]$ LIBVA_DRIVERS_PATH=/lib/dri vainfo
vainfo: VA-API version: 1.15 (libva 2.15.0)
vainfo: Driver version: Mesa Gallium driver 22.1.7 for AMD YELLOW_CARP (LLVM 14.0.6, DRM 3.47, 5.19.7-arch1-g14-1)
vainfo: Supported profile and entrypoints
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
VAProfileH264Main : VAEntrypointVLD
VAProfileH264Main : VAEntrypointEncSlice
VAProfileH264High : VAEntrypointVLD
VAProfileH264High : VAEntrypointEncSlice
VAProfileHEVCMain : VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointEncSlice
VAProfileHEVCMain10 : VAEntrypointVLD
VAProfileHEVCMain10 : VAEntrypointEncSlice
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileVP9Profile0 : VAEntrypointVLD
VAProfileVP9Profile2 : VAEntrypointVLD
VAProfileAV1Profile0 : VAEntrypointVLD
VAProfileNone : VAEntrypointVideoProc
For clarity, are you running your distro's Firefox, or attempting to run the nixpkgs's Firefox trough nixgl?
I'm running my distro's native Firefox package (Arch), and it also happens with the native vainfo
package.
I'm running my distro's native Firefox package (Arch), and it also happens with the native
vainfo
package.
I think nixGL was made only for packages built by nix; I'm curious as to how it is helping you with an Arch package.
I'm running my Wayland compositor (Hyprland) which is installed through nix as the official package lacks support for hidpi XWayland apps, which the nix package has support for. Therefore I'm running Hyprland through nixGL, which ends up causing every program that is run from from Hyprland to inherit the nixGL setup (and therefore break vaapi, etc).