Yesterday we talked about
Nouveau Gallium3D video improvements that are allowing 1080p video clips to now play with this open-source driver stack. Today there's an ongoing discussion about a proper video decoding interface for
Gallium3D.
Younes Manton, the one responsible for some of the Nouveau work and
Generic GPU Video Decoding using shaders, has proposed a proper video decoding interface to this new driver infrastructure. Younes is proposing that a basic interface that extends Gallium3D and would allow drivers to individually specify their hardware rendering capabilities. If the driver doesn't implement a particular capability, it could then revert to using a software fall-back in a standardized way.
By having such an interface, it would be possible for more video decoding methods to be partially supported on older graphics hardware. For instance,
VDPAU could be implemented where it would be fully hardware-accelerated on the
GeForce 8 series and later, but with earlier hardware using the original
PureVideo engine some functions could be implemented in the hardware while others would be using a software-accelerated method.
Keith Whitwell of
Tungsten Graphics then mentioned a similar interface was being considered for adding 2D support to Gallium3D. This 2D interface would make it possible to seamlessly layer 2D operations atop the 3D context, but also another case where the 2D support could be separately implemented. Back in September we first talked about possibly seeing
2D support added to Gallium3D.
Gallium3D is expected to
soon enter the mainline Mesa code-base for Mesa 7.5/7.6. The discussion surrounding this video interface for Gallium3D can be found on the
Mesa development list.