FEATURE_HARDWARE_VIDEO_DECODING_NO_LINUX_NVIDIA error in Firefox
Hi,
I am running Hyprland on CachyOS, with a RTX 4080. I have nvidia-open-dkms (580.76.05) and libva (this) installed
my environment variables in hyprland:
env = LIBVA_DRIVER_NAME,nvidia
env = __GLX_VENDOR_LIBRARY_NAME,nvidia
env = NVD_BACKEND,direct
env = MOZ_ENABLE_WAYLAND,1
env = MOZ_DISABLE_RDD_SANDBOX,1
I also have enabled all the things in about:config as specified in your readme
And of course enabled nvidia-drm modeset=1 everywhere (followed hyprland doc for this, and also the grub way)
But I get this in about:support
Before I was getting FEATURE_FAILURE_VIDEO_DECODING_TEST_FAILED until I disabled my iGPU in my BIOS, and now I get this new one above, weird 🤔
(btw it seems to work in Chromium when it shouldn't ?! from chrome://gpu)
Hmm, I checked logs (by running MOZ_LOG="FFmpegVideo:5" firefox)
and I saw lots of these when playing a YT video:
[RDD 14015: MediaPDecoder #1]: D/FFmpegVideo FFVPX: Frame decode takes 0.32 ms average decode time 0.25 ms frame duration 41.67 average frame duration 41.67 decoded 186 frames [RDD 14015: MediaPDecoder #1]: D/FFmpegVideo FFVPX: VA-API frame pts=1060750000 dts=1060750000 duration=41666 color space BT709/BT709 transfer BT709
So, is it working or not ? 🤔
Something that is helpful for me when debugging the drivers is running the following command in the terminal while playing. a video:
watch -n 2 nvidia-smi
This lets you see all the processes on your computer running your graphics card, you should be able to see a noticeable uptick when playing a video in firefox vs. idle firefox, If there is no uptick then its not working.
Something that is helpful for me when debugging the drivers is running the following command in the terminal while playing. a video:
watch -n 2 nvidia-smiThis lets you see all the processes on your computer running your graphics card, you should be able to see a noticeable uptick when playing a video in firefox vs. idle firefox, If there is no uptick then its not working.
Apparently the nvidia-open-dkms driver doesn't let you see "Decode" usage in nvidia-smi, so hard to know... I guess power draw should be lower with hw accel than without, could use a about:config flag to force disable it and see if there's a change with force enabled
But as I said earlier, the log I got with "VA-API frame" is probably showing it works
Install nvtop, it has a DEC load bar that will appear when there is any.
As for FEATURE_HARDWARE_VIDEO_DECODING_NO_LINUX_NVIDIA, I also get that on Fedora 42, however, if I scroll down, support is shown and hw dec is working (I can playback 8k HEVC with like no CPU load)
| Codec Name | Software Decoding | Hardware Decoding |
|---|---|---|
| H264 | Supported | Supported |
| VP9 | Supported | Supported |
| VP8 | Supported | Supported |
| AV1 | Supported | Unsupported |
| HEVC | Supported | Supported |
(My GPU doesn't support AV1 hardware decoding)
This blocklist reason is perfectly normal and it's just the new name for the old FEATURE_FAILURE_VAAPI_NO_LINUX_NVIDIA that existed ever since firefox added hardware acceleration.
I guess that back in 2022 it may have just existed for peace of mind to fence the old VDPAU-VAAPI wrapper.
I could very easily bypass it with media.hardware-video-decoding.force-enabled=true.
This blocklist reason is perfectly normal and it's just the new name for the old
FEATURE_FAILURE_VAAPI_NO_LINUX_NVIDIAthat existed ever since firefox added hardware acceleration. I guess that back in 2022 it may have just existed for peace of mind to fence the old VDPAU-VAAPI wrapper.I could very easily bypass it with
media.hardware-video-decoding.force-enabled=true.
Obviously, I enabled all the stuff said in the readme..
Then you should have no problems? The codec support table should give you the first five rows green.
(I will admit that funnily enough checking this again made me realize I was still missing MOZ_DISABLE_RDD_SANDBOX=1, but after that 4K VP9 cpu usage went from ~25% down to less than 10%).