Mesa’s Gallium3D video acceleration code has long supported both the VA-API and VDPAU interfaces for video acceleration. VA-API has enjoyed more widespread support among Linux applications and typically more robust while the Video Decode and Presentation API for Unix (VDPAU) was the interface originally started by NVIDIA for their official Linux driver. As of today, Mesa has now removed support for VDPAU acceleration.
AMD engineer David Rosca landed the video acceleration changes to Gallium3D today for removing VDPAU from the Mesa source tree. His reasonings for removing VDPAU are explained in the commit:
“VDPAU only supports X11 and GL interop. There is no Wayland or Vulkan interop support. The API has limitations that makes it impossible to correctly decode certain streams. Application support is also very limited, and VAAPI is always a better choice over VDPAU.”
The merge lightens the Mesa codebase by nearly nine thousand lines of code in removing the VDPAU support.
Again, most Linux apps already support VA-API with VDPAU support being less widespread due to traditionally just being NVIDIA’s video decode interface. NVIDIA for their part with their official Linux driver is also more focused these days on the NVENC/NVDEC APIs rather than VDPAU. Plus hopefully the future is with Vulkan Video anyhow, which is already supported by the Mesa Vulkan drivers too.