VDPAU is a programming interface (API) to allow offloading of graphics rendering to the Graphics Chipset rather than handling by the CPU itself.
It is opensource - produced initially by Nvidia themselves and supported on most of their current Graphics Cards.
Wikipedia has an excellent article on this:
S3 Graphics added support for VDPAU to the Linux drivers of its Chrome
400 video cards since version 14.02.17 of its device driver for Linux,
it supports the S3 Chrome 430 GT, S3 Chrome 440 GTX, S3 Chrome 530 GT
and the S3 Chrome 540 GTX hardware.
Intel and ATI currently offer no support for VDPAU. Nvidia hopes these
GPU designers will support the open source VDPAU library and provide
drivers with VDPAU acceleration by mentioning example names of
hardware specific drivers for Intel and ATI: libvdpau_intel.so and
Intel currently support their own rival API called VA-API.
ATI/Radeon are concentrating their efforts on their Catalyst Drivers - again they have their own API called XVBA but is only supported through their Catalyst Drivers.
Phoronix over the last few months have been reporting the development of another API called the Gallium 3D State Tracker - this is intended to unify the main chipsets - Intel, ATI/Radeon and NVidia. In simple terms (as far as I understand it) - it tries to overlay an API ontop of VA-API, VDPAU etc. Thus you program to the Gallium API and it will translate this to the rival APIs for you.
Much of this is bleeding edge code - unstable and you will often have to compile code etc to keep up with the latest developments. The X-Edgers PPA is a good source of latest developments - an article here described installing the opensource radeon driver and forcing the use of Gallium3D.
Back to topic... as you can see, graphics in linux is currently fractured (some call it a mess!) - thus the best solutions at the moment is to use media players that attempt to implement the rival API's such as MPlayer.