Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

VDPAU

From Wikipedia, the free encyclopedia
Royalty-free application programming interface and free and open-source library
VDPAU
Original authorNvidia
Developerfreedesktop.org
Initial releaseSeptember 17, 2009; 16 years ago (2009-09-17)[1]
Stable release
1.5 / March 7, 2022; 3 years ago (2022-03-07)[2]
Written inC,C++
Operating systemCross-platform
Type
LicenseMIT License
Websitewww.freedesktop.org/wiki/Software/VDPAU/

Video Decode and Presentation API for Unix (VDPAU) is a royalty-freeapplication programming interface (API) as well as its implementation asfree and open-sourcelibrary (libvdpau) distributed under theMIT License.[1] VDPAU is also supported byNvidia.[3]

The VDPAU interface is to be implemented bydevice drivers, such as theNvidia GeForce driver,nouveau, oramdgpu, to offer end-user software, such asVLC media player orGStreamer, a standardized access to availablevideo decompression acceleration hardware in the form ofapplication-specific integrated circuit (ASIC) blocks ongraphics processing units (GPU), such asNvidia'sPureVideo orAMD'sUnified Video Decoder and make use of it.

VDPAU is targeted atUnix-likeoperating systems (includingLinux,FreeBSD, andSolaris).[4][5][6]

Functional range of the interface

[edit]

VDPAU allows video programs to access the specialized video decoding ASIC on the GPU to offload portions of thevideo decoding process andvideo post-processing from theCPU to the GPU.[7]

Currently, the portions capable of being offloaded by VDPAU onto the GPU aremotion compensation (mo comp),inverse discrete cosine transform (iDCT),VLD (variable-length decoding) anddeblocking forMPEG-1,MPEG-2,MPEG-4 ASP (MPEG-4 Part 2),H.264/MPEG-4 AVC andVC-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.

History

[edit]

VDPAU was originally designed by Nvidia for their PureVideoSIP block present on theirGeForce 8 series and later GPUs.[8]

On March 9, 2015, Nvidia released VDPAU version 1.0 which supportsHigh Efficiency Video Coding (HEVC) decoding for the Main, Main 4:4:4, Main Still Picture, Main 10, and Main 12 profiles.[9]

Device drivers and video controllers implementing VDPAU

[edit]

VDPAU is implemented inX11 softwaredevice drivers, but relies on acceleration features in the hardware GPU.

All Nvidia graphic cards for which the driver implements VDPAU are listed inNvidia PureVideo.[10]

S3 Graphics added VDPAU to the Linux drivers of theirChrome 400video cards. As of version 14.02.17 of its Linux device driver, VDPAU is available with the S3 Chrome 430 GT, S3 Chrome 440 GTX, S3 Chrome 530 GT and the S3 Chrome 540 GTX hardware.[11]

ATI/AMD released an open source driver for Radeon HD 4000+ graphic cards featuring VDPAU acceleration.[12][13]

Intel does not offer VDPAU drivers, they only support theirVA-API. It is, however, possible to use Intel's VA-API drivers by way oflibvdpau-va-gl.

Nvidia hopes other GPU designers will make their products compatible with 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.[14] Intel has stated they are considering VDPAU.[15]

sunxiSoCs (Allwinner) have experimental VDPAU implementation.[16]

Mesa as of v8.0 includes VDPAU for video cards that utilizeGallium3D.

Generic VDPAU driver

[edit]

As of late 2013, there is an independently developed back-end driver that in turn usesOpenGL (for drawing and scaling), and VA-API if available (for decoding).[17] It has been reported to work on someIntel graphics andAdobe Flash Player.[18]

The accelerated scaling with just OpenGL functionality is needed mostly because of Flash player, which uses un-accelerated scaling if VDPAU is unavailable. Almost all other video software that runs on Linux orFreeBSD supportsXv. It's essential for full-screen video on slower computers without native VDPAU support.

The VDPAU to VA-API translation for HW decoding is useful with recent Intel graphics hardware, as some software supports HW decoding through VDPAU but not VA-API.

Software that supports VDPAU

[edit]

VDPAU can also be used as abackend forVA-API andOpenMAX IL, which themselves cover a subset of the VDPAU capabilities; so any software that uses the VA-API or OpenMAX IL is also partly capable of using VDPAU (e.g., VLC media player).[31]

Nvidia VDPAU Feature Sets

[edit]

Nvidia VDPAU Feature Sets[32] are different hardware generations of GPU's supporting different levels of (Nvidia PureVideo) hardware decoding capabilities. For feature sets A, B and C, the maximum video width and height are 2048pixels, minimum width and height 48 pixels, and all codecs are currently limited to a maximum of 8192macroblocks (8190 for VC-1/WMV9).Partial acceleration means thatVLD (bitstream) decoding is performed on the CPU, with the GPU only performingIDCT,motion compensation anddeblocking. Complete acceleration means that the GPU performs all of VLD, IDCT, motion compensation and deblocking.

Feature Set A
Supports complete acceleration forH.264 and partial acceleration forMPEG-1,MPEG-2,VC-1/WMV9.
Feature Set B
Supports complete acceleration for MPEG-1, MPEG-2, VC-1/WMV9 and H.264.
Note that all Feature Set B hardware cannot decode H.264 for the following widths: 769-784, 849-864, 929-944, 1009-1024, 1793-1808, 1873-1888, 1953-1968, 2033-2048 pixels.
Feature Set C
Supports complete acceleration for MPEG-1, MPEG-2,MPEG-4 Part 2 (a.k.a. MPEG-4 ASP), VC-1/WMV9 and H.264.
Global motion compensation and Data Partitioning are not supported for MPEG-4 Part 2.
Feature Set D
Similar to feature set C but added support for decoding H.264 with a resolution of up to 4032 × 4080 and MPEG-1/MPEG-2 with a resolution of up to 4032 × 4048 pixels.
Feature Set E
Similar to feature set D but added support for decoding H.264 with a resolution of up to 4096 × 4096 and MPEG-1/MPEG-2 with a resolution of up to 4080 × 4080 pixels. GPUs with VDPAU feature set E support an enhanced error concealment mode which provides more robust error handling when decoding corrupted video streams.[33]
Feature Set F
Introduced dedicatedHEVC Main (8-bit), Main 10 (10-bit) and VP9 Profile 0 (8-bit) video decoding up to 4096 × 2304 pixels resolution.[34]
Feature Set G
Hardware support for HEVC Main 12 (12-bit) and VP9 Profile 2 (12-bit) video decoding are added.[34]
Feature Set H
Feature Set H are capable of hardware-accelerated decoding of 8192x8192 (8k resolution) H.265/HEVC video streams.[35]
Feature Set I
Similar to feature set H.[34]
Feature Set J
Feature Set J adds HEVC 444 decode support.[34]
Feature Set K
Feature Set K are capable of hardware-accelerated decoding of 8192x8192 (8k resolution) AV1 MAIN Profile video streams.[34]

libvdpau standalone VDPAU library

[edit]

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 in their device drivers.[8][36][37][38]

See also

[edit]

References

[edit]
  1. ^ab"Announcing libvdpau 0.2".freedesktop.org. 2009-09-17.
  2. ^"[VDPAU] [ANNOUNCE] libvdpau 1.5".Freedesktop.org. 7 March 2022. Retrieved8 March 2022.
  3. ^"GStreamer Adds NVDEC NVIDIA GPU Decoding Support - Phoronix".
  4. ^abMichael Larabel (2008-11-14)."NVIDIA Driver Brings PureVideo Features To Linux".Phoronix. Retrieved2009-03-13.
  5. ^Michael Larabel (2008-11-14)."NVIDIA VDPAU Benchmarks".Phoronix. Retrieved2009-03-13.
  6. ^"VDPAU: Video Decode and Presentation API for Unix". Nvidia.
  7. ^"Video4Linux2: Path to a Standardized Video Codec API"(PDF).Events.linusfoundation.org\accessdate=2016-05-25. Archived fromthe original(PDF) on 2014-01-06. Retrieved2013-12-04.
  8. ^ab"NVIDIA Releases Standalone VDPAU Library – Phoronix". Phoronix.
  9. ^Larabel, Michael (9 March 2015)."NVIDIA Announces VDPAU 1.0 With HEVC/H.265 Decoding".Phoronix. Retrieved9 March 2015.
  10. ^"PureVideo Support Table"(PDF). Nvidia. Retrieved2014-05-22.
  11. ^"Archived copy". Archived fromthe original on 2012-07-08. Retrieved2010-02-28.{{cite web}}: CS1 maint: archived copy as title (link)
  12. ^"[PATCH] drm/radeon: UVD support for RV710-SI".Lists.freedesktop.org. 2 April 2013. Retrieved2016-05-25.
  13. ^"AMD Releases Open-Source UVD Video Support – Phoronix". Phoronix. Retrieved2016-05-25.
  14. ^"VDPAU: X11 Window System Integration Layer".Download.nvidia.com.
  15. ^"Intel Considering VDPAU Support For X.Org Driver – Phoronix". Phoronix. Retrieved2016-05-25.
  16. ^"GitHub – linux-sunxi/libvdpau-sunxi: Experimental VDPAU for Allwinner sunxi SoCs (WiP)".GitHub. Retrieved2016-05-25.
  17. ^"GitHub – i-rinat/libvdpau-va-gl: VDPAU driver with OpenGL/VAAPI backend".GitHub. Retrieved2016-05-25.
  18. ^"Adobe Flash Player Hardware Acceleration on Intel Graphics Cards".WebUpd8. 5 September 2013. Retrieved2016-05-25.
  19. ^"Boxee blog » boxee for windows, moving up to the Major Leagues". Archived fromthe original on June 26, 2009. RetrievedJune 26, 2009.
  20. ^"Fluendo's New Codecs Support VDPAU, VA-API – Phoronix". Phoronix.com. Retrieved2016-05-25.
  21. ^Michael Larabel (2008-11-29)."MythTV Adds Support For NVIDIA VDPAU".Phoronix. Retrieved2009-03-13.
  22. ^"XBMC for Linux VDPAU – NVIDIA GPU video decoding support (now in the mainline SVN)". Xbmc.org. Archived fromthe original on 2009-02-28. Retrieved2016-05-25.
  23. ^"Kodi – Open Source Home Theater Software". Xbmc.org. Archived fromthe original on 2009-04-14. Retrieved2016-05-25.
  24. ^"XBMC Receives Mainline Support For VDPAU – Phoronix". Phoronix.
  25. ^"XBMC Receives Mainline Support For VDPAU".Phoronix.com. 2009-03-23. Retrieved2016-05-25.
  26. ^Michael Larabel (2008-12-17)."Xine Picks Up Support For NVIDIA's VDPAU".Phoronix. Retrieved2009-03-13.
  27. ^"xine-lib/xine-lib-1.2: changeset 11335:9b68f6efb713". Debian.org. Archived fromthe original on July 8, 2012. Retrieved2016-05-25.
  28. ^ddennedy (2009-11-30)."VDPAU for MLT 0.4.11 Git version".MLT. Archived fromthe original on 2010-02-27. Retrieved2009-11-30.
  29. ^"Flash Player 10.2 beta – with VDPAU acceleration! : linux".reddit. December 2010.
  30. ^"mpv Reference Manual". Retrieved2016-04-09.
  31. ^Michael Larabel (2009-02-03)."A NVIDIA VDPAU Back-End For Intel's VA-API".Phoronix. Retrieved2009-03-13.
  32. ^"Appendix G. VDPAU Support".Nvidia. 2016-12-14. Retrieved2017-01-03.
  33. ^"VDPAU For NVIDIA's Maxwell GPU On Linux".Phoronix.com. 2014-03-03. Retrieved2016-05-25.
  34. ^abcde"Appendix G. VDPAU Support".us.download.nvidia.com. Retrieved2022-06-02.
  35. ^http://www.nvidia.com/download/driverResults.aspx/104284/en-usNvidia LINUX X64 (AMD64/EM64T) DISPLAY DRIVER Version:367.27
  36. ^"[ANNOUNCE] libvdpau 0.2".Lists.freedesktop/org. 17 September 2009. Retrieved2016-05-25.
  37. ^"NVIDIA Proposes VDPAU For DRI2 Patches – Phoronix". Phoronix. Retrieved2016-05-25.
  38. ^"[PULL] Add VDPAU drivers to the server's DRI2 implementation". xorg. 23 October 2009. Retrieved2016-05-25.
  39. ^"VideoToolbox - Apple Developer Documentation".developer.apple.com. Retrieved2018-08-05.

External links

[edit]
Fixed pixel pipeline
Pre-GeForce
Vertex andpixel shaders
Unified shaders
Unified shaders &NUMA
Ray tracing &Tensor Cores
Software and technologies
Multimedia acceleration
Software
Technologies
GPU microarchitectures
Other products
GraphicsWorkstation cards
GPGPU software
Console components
Nvidia Shield
SoCs and embedded
CPUs
Computerchipsets
Company
Key people
Acquisitions
Retrieved from "https://en.wikipedia.org/w/index.php?title=VDPAU&oldid=1324549882"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2026 Movatter.jp