Video Acceleration API

Video Acceleration API

Video Acceleration API (abrégé en VA API, VA-API ou VAAPI) est une bibliothèque open source (libVA) et une interface de programmation qui visent à permettre le rendu vidéo par le processeur graphique sur les systèmes dérivés d'UNIX (comme Linux ou FreeBSD) utilisant X Window System.

Conçue initialement par Intel pour ses propres processeurs graphiques de série GMA, elle est librement implémentable par tout fabriquant. Pourtant Nvidia et AMD ont préféré se concentrer chacune sur leur propre solution, respectivement Video Decode and Presentation API for Unix (VDPAU) et X-Video Bitstream Acceleration (XvBA).

Le décodage est la partie la plus fréquemment prise en charge, mais l'encodage est aussi possible[1] (par exemple avec les processeurs Intel de la famille Sandy Bridge)[2]. Techniquement l'encodage serait également possible sur les SoC Atom E6xx[3].

VA-API se veut le successeur de XvMC en gérant notamment, outre la compensation de mouvement (motion compensation) et l'inverse de la transformée en cosinus discrète (inverse discrete cosine transform, ou IDCT), les procédés suivants : Variable Length Decoding (VLD) : CABAC et CAVLC, Inverse Transform (IT) et In-Loop Deblocking (ILDB).

Sommaire

Implémentation

Codecs supportés

Tous les codecs ne sont pas actuellement pris en charge. Citons : MPEG-2, MPEG-4 ASP/H.263, MPEG-4 AVC/H.264 et VC-1/VMW3 (suivant les implémentations).

Logiciels supportés

Liste non exhaustive :

  • Gnash, à partir de la version 0.8.8, suite au travail de Gwenolé Beauchesne pour la société Splitted-Desktop Systems[4] [5]
  • VLC media player, à partir de la version 1.1.0[6]

À la date du 4 octobre 2011, le support de VA-API pour Lightspark[7], GStreamer (via l'extension gstreamer-vaapi développée par Gwenolé Beauchesne pour la société Splitted-Desktop)[8] et Xine (via la bibliothèque xine-lib-vaapi)[9] est en cours d'implémentation.

Le logiciel MPlayer ne supporte pas VA-API dans sa version officielle, mais une version développée par Gwenolé Beauchesne pour la société Splitted-Desktop Systems existe à cet effet[10].

Processeurs graphiques supportés

Processeurs Intel

Sous Linux, les puces Intel G45/GM45 ou supérieures supportent VA-API, soit à la date du 2 novembre 2011[11] :

  • pour le décodage MPEG2 et H.264/AVC :
    • Intel GMA X4500HD utilisé dans les chipsets G45,
    • Intel GMA 3150 utilisés avec les processeurs ATOM N450/D410/D450 (plate-forme Pine Trail),
    • Intel HD Graphics présents dans les processeurs Intel Core i7/i5/i3 de première génération (famille Clarkdale).
  • pour le décodage MPEG2 et H.264/AVC, mais aussi VC-1 et l'encodage H.264/AVC :
    • Intel HD Graphics 2000/3000 présents dans les processeurs Intel Core i7/i5/i3 de deuxième génération (famille Sandy Bridge) et suivants.

Intel GMA 500 (Poulsbo) supporte VA-API via son pilote non-libre[12]. À noter que le GMA 500 a été le premier processeur graphique a supporter VA-API.

Les SoC Atom E6xx sont également supportés, mais un composant logiciel non-libre Intel, Media Infrastructure Accelerator (MI-X), peut être nécessaire.

Processeurs Nvidia et AMD

libVA a été modifiée pour pouvoir tirer avantage de pilotes compatibles VDPAU[13] ou XvBA[14],[15]. Supportent VDPAU/XvBA (et donc incidemment VA-API) :

  • Pilotes non-libres :
    • les cartes Nvidia les plus récentes (à partir de la série GeForce 8) fonctionnant avec les pilotes non-libres qui utilisent à cet effet le circuit PureVideo dédié,
    • les cartes AMD les plus récentes (Radeon HD) fonctionnant avec les pilotes non-libres (Catalyst) qui utilisent à cet effet le circuit Unified Video Decoder (UVD) dédié,
  • Pilotes libres Gallium3D (qui utilisent à cet effet la technique des shaders programmables) :
    • À la date du 2 novembre 2011, les cartes Nvidia NV40-98 fonctionnant avec les pilotes libres prennent en charge le décodage MPEG1 et MPEG2.[16]
    • À la date du 2 novembre 2011, les cartes AMD R300 et supérieures fonctionnant avec les pilotes libres (xf86-video-ati 6.14.3 ou supérieur) prennent en charge le décodage MPEG1 et MPEG2[17],[18].

Notes et références

  1. (en) Intel Sandy Bridge Video Encode For Linux
  2. (en) Intel Proposes Major Additions To VA-API Acceleration
  3. (en) White Paper: Using Gstreamer for Hardware Accelerated Video Decoding on Intel® Atom™ Processor E6xx Series
  4. (en) Gnash: décodage fluide de vidéos Flash HD (H.264)
  5. (en) Gnash 0.8.8 Released!
  6. (en) VLC 1.1.0 release notes
  7. (en) Rapport de bogue sur Launchpad
  8. (en) Rapport de bogue sur GNOME Bugzilla
  9. (en) VAAPI support for xine, sur la liste de discussion xine-devel
  10. (en) Support VA API pour MPlayer
  11. (en) Linux Graphics Drivers Documentation from Intel
  12. (en) Mplayer, FFmpeg Gain VA-API Support
  13. (en) A NVIDIA VDPAU Back-End For Intel's VA-API
  14. (en) A New Release Of The AMD XvBA Back-End To VA-API
  15. (en) Major Open-Source Code Drop For XvBA, PowerVR Coming
  16. (en) Nouveau : The community & past, current and future developments par Martin Peres et Ben Skeggs, le 13 septembre 2011
  17. (en) Mesa Gallium3D Pipe-Video Has Landed
  18. (en) ANNOUNCE : xf86-video-ati 6.14.3

Annexes

Liens internes

Lien externe


Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Video Acceleration API de Wikipédia en français (auteurs)

Поможем сделать НИР

Regardez d'autres dictionnaires:

  • Video Acceleration API — (VA API) is a software API specification which provides access to graphics hardware (GPU) acceleration for video processing. Accelerated processing includes video decoding, subpicture blending and rendering.VA API is meant to some day replace… …   Wikipedia

  • Video Acceleration API — (VA API) o API de aceleración de video es una especificación que proporciona el acceso a hardware de gráficos (GPU) y la aceleración de vídeo para su procesamiento. La aceleración de video incluye códecs de video, mezclas de subimagen y… …   Wikipedia Español

  • DirectX Video Acceleration — (DXVA) is a Microsoft API specification for the Microsoft Windows and Xbox 360 platforms that allows video decoding to be hardware accelerated. The pipeline allows certain CPU intensive operations such as iDCT, motion compensation and… …   Wikipedia

  • DirectX Video Acceleration — (сокращённо DXVA, дословно рус. ускорение видео DirectX)  интерфейс программирования приложений (API), компонент DirectX, разработанный корпорацией Microsoft и предназначенный для обработки (в первую очередь, декодирования) битового потока… …   Википедия

  • DirectX Video Acceleration — Dieser Artikel wurde aufgrund von inhaltlichen Mängeln auf der Qualitätssicherungsseite der Redaktion Informatik eingetragen. Dies geschieht, um die Qualität der Artikel aus dem Themengebiet Informatik auf ein akzeptables Niveau zu bringen. Hilf… …   Deutsch Wikipedia

  • Video Decode and Presentation API for Unix — libvdpau(VDPAU] Maintainer Nvidia Entwickler Nvidia Aktuelle Version 0.4 (28. Januar 2010) Betriebssystem unixoide Kategorie …   Deutsch Wikipedia

  • Video for Windows — Microsoft Video for Windows (VFW) программный интерфейс (API), позволяющий обрабатывать видеоданные. API появилось в 16 и битной Windows, в дальнейшем многие его функции были заменены возможностями DirectX. Содержание 1 Функции VFW 1.1 Работа с… …   Википедия

  • X-Video Motion Compensation — (XvMC), is an extension of the X video extension (Xv) for the X Window System. The XvMC API allows video programs to offload portions of the video decoding process to the GPU video hardware. In theory this process should also reduce bus bandwidth …   Wikipedia

  • X-Video Bitstream Acceleration — (XvBA) ist eine proprietäre Programmierschnittstelle für Radeon Grafikkarten des Herstellers AMD, über die das Dekodieren von Videoströmen und Nachbearbeiten des dekodierten Materials auf Linux basierten Betriebssystemen von der CPU größtenteils… …   Deutsch Wikipedia

  • Unified Video Decoder — (рус. Унифицированный видео декодер; ранее называемый Universal Video Decoder  рус. Универсальный видео декодер; сокращённо  UVD)  аппаратный компонент (блок) графических процессоров производства американской компании AMD,… …   Википедия

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”