Firefox on Linux to date has focused on the Video Acceleration API (VA-API) that works well for some vendors but lacks official support from NVIDIA unless using the independent NVIDIA-VAAPI driver project that layers VA-API on NVDEC. There are also various embedded drivers and more not supporting VA-API
So it’s basically just because the existing video decoder API in Linux doesn’t have support for various hardware devices for various reasons. But those devices still have Vulkan support. Not sure why Vulkan support for those devices wasn’t just added to VA-API, who knows.
Nvidia and AMD both have differing APIs for video decoding. The idea in using Vulkan is that not every GPU supports the vendor specific decoding method, but they do all support Vulkan (modern GPUs, anyways). So this way you still get hardware accelerated decoding through a more widely supported means.
What does Vulkan video decoding do?
The article says
So it’s basically just because the existing video decoder API in Linux doesn’t have support for various hardware devices for various reasons. But those devices still have Vulkan support. Not sure why Vulkan support for those devices wasn’t just added to VA-API, who knows.
Nvidia and AMD both have differing APIs for video decoding. The idea in using Vulkan is that not every GPU supports the vendor specific decoding method, but they do all support Vulkan (modern GPUs, anyways). So this way you still get hardware accelerated decoding through a more widely supported means.