You are not logged in.
I have a laptop with an AMD Ryzen 7 4800H and Nvidia 1660TI. I have just finished a fresh install of Arch Linux. I also installed the following for the Nvidia GPU:
$ pacman -Q | grep nvidia
libva-nvidia-driver 0.0.18-1
linux-firmware-nvidia 20260916-1
nvidia-open 615.71.09-4
nvidia-utils 615.71.09-1When I play a video in Firefox, hardware decoding is done on the integrated (Renoir) GPU. This integrated GPU has limited video codecs, so I want to use the Nvidia dedicated GPU instead.
I have tried the following in my /etc/environment:
LIBVA_DRIVER_NAME=nvidia
LIBVA_DRM_DEVICE=/dev/dri/renderD129
MOZ_DRM_DEVICE=/dev/dri/renderD129but this didn't work.
How can I get Firefox to use the Nvidia GPU for hardware decoding when playing a video?
Offline
Please post the full outputs of
$ vainfo
$ LIBVA_DRIVER_NAME=nvidia vainfoAlso check https://wiki.archlinux.org/title/Firefo … celeration
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
$ vainfo
Trying display: wayland
vainfo: VA-API version: 1.24 (libva 2.24.0)
vainfo: Driver version: Mesa Gallium driver 26.2.3-arch1.1 for AMD Radeon Graphics (radeonsi, renoir, ACO, DRM 3.64, 7.2.7-arch1-1)
vainfo: Supported profile and entrypoints
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileVC1Simple : VAEntrypointVLD
VAProfileVC1Main : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
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
VAProfileNone : VAEntrypointVideoProc$ LIBVA_DRIVER_NAME=nvidia vainfo
Trying display: wayland
vainfo: VA-API version: 1.24 (libva 2.24.0)
vainfo: Driver version: VA-API NVDEC driver [direct backend]
vainfo: Supported profile and entrypoints
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileVC1Simple : VAEntrypointVLD
VAProfileVC1Main : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
VAProfileH264Main : VAEntrypointVLD
VAProfileH264High : VAEntrypointVLD
VAProfileH264ConstrainedBaseline: VAEntrypointVLD
VAProfileJPEGBaseline : VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointVLD
VAProfileVP8Version0_3 : VAEntrypointVLD
VAProfileVP9Profile0 : VAEntrypointVLD
VAProfileHEVCMain10 : VAEntrypointVLD
VAProfileHEVCMain12 : VAEntrypointVLD
VAProfileVP9Profile2 : VAEntrypointVLD
VAProfileHEVCMain444 : VAEntrypointVLD
VAProfileHEVCMain444_10 : VAEntrypointVLD
VAProfileHEVCMain444_12 : VAEntrypointVLD
VAProfileNone : VAEntrypointVideoProcOffline
The additional codecs are VAProfileVP8Version0_3, VAProfileHEVCMain12 and VAProfileHEVCMain444*
Are you sure that's relevant to any videos you want to play in your browser?
Offline
The additional codecs are VAProfileVP8Version0_3, VAProfileHEVCMain12 and VAProfileHEVCMain444*
Are you sure that's relevant to any videos you want to play in your browser?
I'm not sure, but even when I completely disable the iGPU in the BIOS, hardware decoding doesn't work, regardless of what video I'm playing (in VLC or Firefox or MPV).
Offline
What's the output of
LIBVA_DRIVER_NAME=nvidia mpv someporn.mp4?
Offline
What's the output of
LIBVA_DRIVER_NAME=nvidia mpv someporn.mp4?
Sorry, I made a mistake in my previous post. Hardware decoding on the Nvidia dGPU is working on MPV and Haruna and VLC:
$ LIBVA_DRIVER_NAME=nvidia mpv --hwdec=auto test.mp4
● Video --vid=1 (h264 1280x546 23.976 fps) [default]
● Audio --aid=1 (aac 2ch 48000 Hz 130 kbps) [default]
[vo/gpu-next/libplacebo] Spent 1491.991 ms creating vulkan device (slow!)
Using hardware decoding (vulkan).
AO: [pipewire] 48000Hz stereo 2ch floatp
VO: [gpu-next] 1280x546 => 1281x546 vulkan[nv12]
AV: 00:00:18 / 01:34:34 (0%) A-V: 0.000
Exiting... (Quit)
$ nvidia-smi dmon
# gpu pwr gtemp mtemp sm mem enc dec jpg ofa mclk pclk
# Idx W C C % % % % % % MHz MHz
0 6 41 - 10 3 0 5 0 0 405 360
0 5 41 - 10 3 0 5 0 0 405 360
0 5 41 - 10 3 0 5 0 0 405 300
0 6 41 - 12 3 0 5 0 0 405 300
0 5 41 - 14 3 0 4 0 0 405 300
0 5 41 - 14 3 0 4 0 0 405 300
0 5 41 - 15 3 0 5 0 0 405 300
0 5 41 - 14 3 0 4 0 0 405 300
0 5 41 - 14 3 0 4 0 0 405 300
0 5 41 - 14 3 0 4 0 0 405 300
^CHardware decoding works on the Nvidia dGPU for MPV (and the other players) whether I'm in "dGPU only" mode or "hybrid graphics" mode.
Offline
Browsers are a complete problem of their own:
https://wiki.archlinux.org/title/Firefo … celeration - the about:support report will be a necessary first stop.
Offline