VDPAU

This article describes the setup of VDPAU (Video Decode and Presentation API for Unix).

make.conf
Portage knows the global USE flag vdpau for enabling support for VDPAU in other packages. Enabling this USE flag will pull in automatically:

After adding the above USE flag update the system so the changes take effect:

USE flags
The USE flags of libvdpau are:

AMD/Radeon specific steps
By default applications such as mplayer,vlc,vdpauinfo,... make VDPAU specific calls via libvdpau library. This library then dynamically loads appropriate back-end driver ( VDPAU driver specific to your hardware read more...). At the time of writing the mechanism to automatically decide which back-end driver needs to be loaded was not established. Currently libvdpau is hardcoded to load NVIDIA backend driver. It means that VDPAU will not work properly on Radeon cards. The only possible way to change that behavior is by specifying the correct back-end driver manually. (here we assume that the vdpau USE flag was enabled and the system was updated successfully). One way to find that name is by checking Xorg log file:
 * First you need to find the name of the driver related to your hardware

The output will show if VDPAU driver has been initialized properly (two leading (II) letters in the sample output above). It also should specify the name of back-end driver (r300 in the sample output). To do that you need to add the following line to ~/.bashrc file (provided that Bash is the default shell of a user who is going to run graphical environment). For the sample case described above the mentioned line would look like:
 * Now you can manually setup the name of back-end driver with help of VDPAU_DRIVER environment variable.


 * Now should show you an information about your VDPAU configuration instead of an error message.

Additional software

 * : shows if VDPAU is supported.
 * VDPAU can be used as a VAAPI backend.

NVIDIA specific steps
With the proprietary driver vdpau works out of the box, however nouveau driver requires firmware:

Configuration
You may need to tweak the config files of the programs, you can make use of VDPAU.

mplayer
Detect the available VDPAU video codecs:

Add them to the mplayer config file, e.g.: