VDPAU

From Wikipedia, the free encyclopedia
Jump to: navigation, search
VDPAU
Original author(s) Nvidia
Stable release 0.4[1] / January 28, 2010; 2 years ago (2010-01-28)
Operating system Linux, FreeBSD, Solaris
Type Library
Website http://http.download.nvidia.com/XFree86/vdpau/doxygen/html/

VDPAU (Video Decode and Presentation API for Unix) is an open source library (libvdpau) and API originally designed by Nvidia for its GeForce 8 series and later GPU hardware,[2][3] targeted at the X Window System on Unix-based operating systems (including Linux, FreeBSD, and Solaris).[4][5][6] This VDPAU API allows video programs to offload portions of the video decoding process and video post-processing to the GPU video-hardware.

Currently, the portions capable of being offloaded by VDPAU onto the GPU are motion compensation (mo comp), inverse discrete cosine transform (iDCT), VLD (variable-length decoding) and deblocking for MPEG-1, MPEG-2, MPEG-4 ASP (MPEG-4 Part 2), H.264/MPEG-4 AVC and VC-1, WMV3/WMV9 encoded videos.[4] Which specific codecs of these that can be offloaded to the GPU depends on the generation version of the GPU hardware; specifically, to also decode MPEG-4 ASP (MPEG-4 Part 2), Xvid/OpenDivX (DivX 4), and DivX 5 formats, a GeForce 200M (2xxM) Series (the eleventh generation of Nvidia's GeForce graphics processing units) or newer GPU hardware is required.[7]

VDPAU can be described as the X Window System equivalent of the Microsoft's DxVA (DirectX Video Acceleration) API for Windows.[4]

Contents

[edit] Device drivers and hardware supporting VDPAU

Each hardware video GPU capable of VDPAU video acceleration requires an X11 software device driver to enable these features. Currently only second generation of PureVideo HD bit-stream processor in some of Nvidia's GeForce 8 series and later graphics cards hardware that has support since the Beta device driver version 180.06.[4] Unsupported hardware from the GeForce 8 series includes the 8800GTS 320/640 MB editions and the 8800GTX. Later cards based on the G9x series cores (e.g., the 8400GS and the 8800GTS 512 MiB; G92 core) are supported. Nvidia currently has no plans to introduce support for the unsupported hardware.[8] All supported graphic devices are listed in Nvidia PureVideo.

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.[9]

Intel and ATI currently[when?] 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 libvdpau_ati.so.[10] Intel has mentioned that they are considering VDPAU support.[11]

[edit] Software supporting VDPAU

VDPAU can also be used as a backend for the Video Acceleration API (VA API) which itself covers a subset of VDPAU's capabilities; so any software that supports VA API also partly supports VDPAU (e.g., VLC media player).[23]

[edit] libvdpau standalone VDPAU library

The libvdpau standalone VDPAU library is distributed by Nvidia independently of their proprietary Linux graphics driver in an effort to help the adoption of VDPAU by those outside of Nvidia. This open source library package contains a wrapper library and a debugging library allowing other manufacturers to implement VDPAU support into their device drivers.[3][24][25][26]

[edit] See also

[edit] References

  1. ^ http://lists.freedesktop.org/archives/xorg-announce/2010-January/001245.html
  2. ^ Announcing libvdpau 0.2
  3. ^ a b NVIDIA Releases Standalone VDPAU Library
  4. ^ a b c d Michael Larabel (2008-11-14). "NVIDIA Driver Brings PureVideo Features To Linux". Phoronix. http://www.phoronix.com/scan.php?page=article&item=nvidia_180_vdpau&num=1. Retrieved 2009-03-13. 
  5. ^ Michael Larabel (2008-11-14). "NVIDIA VDPAU Benchmarks". Phoronix. http://www.phoronix.com/scan.php?page=article&item=nvidia_vdpau&num=1. Retrieved 2009-03-13. 
  6. ^ VDPAU (Video Decode and Presentation API for Unix)
  7. ^ NVIDIA 190.32 Beta Brings New VDPAU Features
  8. ^ http://www.nvnews.net/vbulletin/showthread.php?t=123095
  9. ^ http://drivers.s3graphics.com/en/download/drivers/chrome4x-Linux/RN_Linux_EN.txt
  10. ^ NVIDIA's driver for X11-oriented VDPAU
  11. ^ Intel Considering VDPAU Support For X.Org Driver
  12. ^ [1]
  13. ^ Fluendo's New Codecs Support VDPAU, VA-API
  14. ^ Michael Larabel (2008-11-29). "MythTV Adds Support For NVIDIA VDPAU". Phoronix. http://www.phoronix.com/scan.php?page=news_item&px=Njg4Ng. Retrieved 2009-03-13. 
  15. ^ a b XBMC for Linux VDPAU support (ongoing development in an separate SVN branch)
  16. ^ a b XBMC SVN Development Tree - Trac Changeset 17698
  17. ^ XBMC Receives Mainline Support For VDPAU
  18. ^ XBMC Receives Mainline Support For VDPAU
  19. ^ Michael Larabel (2008-12-17). "Xine Picks Up Support For NVIDIA's VDPAU". Phoronix. http://www.phoronix.com/scan.php?page=news_item&px=Njk0MA. Retrieved 2009-03-13. 
  20. ^ xine-lib-1.2 hg development tree, changeset 9b68f6efb713
  21. ^ ddennedy (2009-11-30). "VDPAU for MLT 0.4.11 GIT version". MLT. http://sourceforge.net/news/?group_id=96039&id=279508. Retrieved 2009-11-30. 
  22. ^ [2]
  23. ^ Michael Larabel (2009-02-03). "A NVIDIA VDPAU Back-End For Intel's VA-API". Phoronix. http://www.phoronix.com/scan.php?page=article&item=xorg_vdpau_vaapi. Retrieved 2009-03-13. 
  24. ^ libvdpau 0.2 release announcement published on x.org devel mailing-list
  25. ^ NVIDIA Proposes VDPAU For DRI2 Patches
  26. ^ Add VDPAU drivers to the server's DRI2 implementation (PULL request on xorg-devel mailing list)
  27. ^ http://www.tuaw.com/2011/01/20/xbmc-for-ios-and-atv2-now-available/ XBMC for iOS and Apple TV now available
  28. ^ http://developer.amd.com/gpu/AMDAPPSDK/assets/OpenVideo_Decode_API.PDF OpenVideo Decode (OVD) API

[edit] External links

Personal tools
Namespaces

Variants
Actions
Navigation
Interaction
Toolbox
Print/export
Languages