Video Decode and Presentation API for Unix
Video Decode and Presentation API for Unix (VDPAU) ist eine offene Programmierschnittstelle für Grafikkarten, die ursprünglich von Nvidia geschrieben wurde. Sie dient zum Dekodieren von Videoströmen und Nachbearbeiten des dekodierten Materials auf unixoiden Betriebssystemen mit Hilfe der Hardwarebeschleunigung der Grafikkarte (genauer des Grafikprozessors), um so die CPU zu entlasten. Es gibt sowohl freie als auch proprietäre Grafikkartentreiber, die VDPAU unterstützen.
libvdpau / VDPAU | |
---|---|
Basisdaten
| |
Hauptentwickler | Nvidia |
Entwickler | Nvidia |
Aktuelle Version | 1.1[1] (16. März 2015) |
Betriebssystem | unixoide |
Programmiersprache | C |
Kategorie | Programmbibliothek |
Lizenz | MIT-Lizenz[2][3] |
Projektseite |
Mit VDPAU können die Berechnung der Bewegungskompensation, der inversen diskreten Kosinustransformation und das Variable Length Coding bei den Videoformaten MPEG-1, -2, -4 ASP, -4 AVC, VC-1 und WMV 3 von der Grafikkarte übernommen werden, im Fall von AVC und VC-1/WMV3 auch der Deblocking Filter. Der Videoprozessor auf der Grafikkarte übernimmt dann die Hauptrechenlast beim Dekodieren. Dadurch wird z. B. das flüssige Abspielen von HDTV und anderem, hochauflösendem Videomaterial auf älteren Rechnern mit vergleichsweise langsamer CPU ermöglicht. Unterstützt die Grafikkarte nicht alle Berechnungsschritte, können diese vom Treiber unterstützt sein, die CPU wird dann entsprechend weniger entlastet.
Unterstützte Produkte
BearbeitenNvidia
BearbeitenDer proprietäre Nvidia-Treiber, welcher für Linux, Solaris und FreeBSD erhältlich ist, unterstützt VDPAU auf allen Grafikkarten, die zumindest PureVideo HD der zweiten Generation VP2 unterstützen, also ab der Geforce-8-Serie, ausgenommen der Geforce 8800 GTS, Geforce 8800 GTX und Geforce 8800 Ultra.
Der freie nouveau-Treiber bietet eine solche Unterstützung für alle Karten ab VP2 bis VP5 ab Mesa 8.0 und höher.[4] Die neuen GeForce GTX ab 750 bis 980 mit VP6+ werden vom aktuellen Stand Mesa 11.2 noch nicht voll unterstützt.
AMD
BearbeitenIm April 2013 erhielt der freie radeon-Treiber VDPAU-Unterstützung für Grafikkarten ab der HD-4000-Serie[5]; der proprietäre fglrx-Treiber unterstützt bislang nur XvBA[6]. Im aktuellen Mesa 11 sind alle Radeon ab Chip R600 und damit ab Radeon HD 2400 und höher unterstützt[7].
S3 Graphics
BearbeitenAlle Grafikkarten ab der Chrome-400 Reihe (es wird ausschließlich Linux unterstützt).[8]
Allwinner A10/A20 SOC
BearbeitenFür diese Plattformen besteht eine Implementierung von sunxi unter Linux.[9]
Unterstützung in Mediaplayern
BearbeitenMPlayer, MythTV, Kodi und xine verfügen über eine funktionierende VDPAU-Implementierung, andere Implementierungen sind in Arbeit.
Siehe auch
Bearbeiten- X-Video Bitstream Acceleration (XvBA) ist die konkurrierende, proprietäre Technik für Radeon-Grafikkarten des Herstellers AMD
- Video Acceleration API (VaAPI) ist die konkurrierende, offene Schnittstelle des Herstellers Intel
- DirectX Video Acceleration ist eine vergleichbare Technologie für Windows
- Video Decode Acceleration Framework ist das API zum hardwarebeschleunigten Dekodieren von H.264 unter macOS
- PureVideo HD enthält Daten über die technischen Fähigkeiten der von VDPAU unterstützten Grafikkarten von Nvidia
Einzelnachweise
Bearbeiten- ↑ www.phoronix.com.
- ↑ „VDPAU Source“ (Seite nicht mehr abrufbar, festgestellt im Dezember 2018. Suche in Webarchiven) Info: Der Link wurde automatisch als defekt markiert. Bitte prüfe den Link gemäß Anleitung und entferne dann diesen Hinweis. VDPAU Source mit Lizenzkopf
- ↑ „MIT-Lizenz“ MIT-Lizenz zum Vergleich
- ↑ https://nouveau.freedesktop.org/wiki/VideoAcceleration/
- ↑ Fatima Sheremetyeva: AMD Releases Open-Source UVD Video Support. Phoronix, 2. April 2013, abgerufen am 5. April 2013.
- ↑ Open Source. XvBA SDK and Tools. Advanced Micro Devices, Inc., abgerufen am 5. April 2013.
- ↑ http://xorg.freedesktop.org/wiki/RadeonFeature/
- ↑ „Treiber README“ (Liesmich Datei der Chrome 400 Treiber) ( vom 8. Juli 2012 im Webarchiv archive.today)
- ↑ „sunxi-vdpau“ GitHub-Repo