libvdpau-sunxi is a [VDPAU] (ftp://download.nvidia.com/XFree86/vdpau/doxygen/html/index.html) backend driver for Allwinner based (sunxi) SoCs.
It is based on the [reverse engineering effort] (http://linux-sunxi.org/Cedrus) of the [linux-sunxi] (http://linux-sunxi.org) community. It does neither depend on code, which was released by Allwinner, nor does it act like a wrapper around some precompiled binary libraries. libvdpau-sunxi is a clean implementation, that is based on reverse engineering.
It currently supports decoding of MPEG1 and MPEG2, some limited MPEG4 types and H.264. On H3/A64 it also decodes H.265. It also supports all the basic features of the VDPAU API - including presentation. As this is WorkInProgress, not all features are implemented yet. Some of them probably will never get fully supported due to hardware specific limitations.
$ make
$ make install
$ export VDPAU_DRIVER=sunxi
$ mpv --vo=vdpau --hwdec=vdpau --hwdec-codecs=all [filename]
Note: Make sure that you have write access to both /dev/disp
and /dev/cedar_dev
OSD support is available either
To enable OSD support for e.g. subtitles or GUI, set VDPAU_OSD environment variable to 1:
$ export VDPAU_OSD=1
To disable G2D mixer processor usage (for debugging purposes and forcing pixman usage on A10/A20), set VDPAU_DISABLE_G2D environment variable to 1:
$ export VDPAU_DISABLE_G2D=1
If using G2D (A10/A20), make sure to have write access to /dev/g2d
.