[gst-devel] New Video Decode and Presentation API

Felipe Contreras felipe.contreras at gmail.com
Tue Dec 16 20:35:32 CET 2008

On Fri, Nov 14, 2008 at 8:39 PM, Andy Ritger <aritger at nvidia.com> wrote:
> I'm pleased to announce a new video API for Unix and Unix-like platforms,
> and a technology preview implementation of this API from NVIDIA.
> The API is called VDPAU (Video Decode and Presentation API for Unix).
> The current API documentation is here:
>     ftp://download.nvidia.com/XFree86/vdpau/doxygen/html/index.html
> Some highlights of VDPAU:
>     * Defines an API for GPU-accelerated decode of MPEG-1, MPEG-2, H.264, and
>       VC-1 bitstreams.
>     * Defines an API for post-processing of decoded video, including
>       temporal and spatial deinterlacing, inverse telecine, and noise
>       reduction.
>     * Defines an API for timestamp-based presentation of final video
>       frames.
>     * Defines an API for compositing sub-picture, on-screen display,
>       and other UI elements.
> Note that VDPAU does not address content protection.
> Some highlights/limitations of NVIDIA's current implementation:
>     * Supported on NVIDIA GPUs with the NVIDIA second generation video
>       processors (see the end of this announcement for a complete GPU list).
>     * Currently, only one video stream can be decoded at a time; we hope
>       to lift this restriction eventually.
>     * Available in the 180.06 NVIDIA public beta release:
>         http://www.nvidia.com/object/linux_display_ia32_180.06.html
>         http://www.nvidia.com/object/linux_display_amd64_180.06.html
>         http://www.nvidia.com/object/freebsd_180.06.html
>         http://www.nvidia.com/object/solaris_display_180.06.html
> The VDPAU support in the NVIDIA 180.06 beta release is still very
> preliminary.  We are aware of cases of visual corruption and in some
> cases GPU hangs.  We will be working on these issues over the next
> several NVIDIA driver releases.
> While NVIDIA's VDPAU implementation is not ready for end user use yet,
> it should be far enough along that interested application developers
> can begin working with it.
> Additionally, NVIDIA has developed patches to ffmpeg and MPlayer to
> demonstrate a video player using VDPAU:
>     ftp://download.nvidia.com/XFree86/vdpau/mplayer-vdpau-3076399.tar.bz2
> These patches include changes against libavcodec, libavutil, ffmpeg,
> and MPlayer itself; they may serve as an example of how to use VDPAU.
> Once we do some further testing, bugfixing, and cleanup, we will
> contribute the MPlayer patches to the MPlayer developers.
> If other hardware vendors are interested, they are welcome to also
> provide implementations of VDPAU.  The VDPAU API was designed to allow
> a vendor backend to be selected at run time.

I'm curious, NVIDIA is a member of OpenMAX but somehow you decided to
write a new proprietary API, why? Is NVIDIA pushing for OpenMAX only
in embedded?

At least you are providing more functionality, which is good.

Felipe Contreras

More information about the gstreamer-devel mailing list