
Hosszú ideig párhuzamosan létezett a VDPAU (Video Decode and Presentation API for Unix) és a VA-API (Video Acceleration API) a Linux világában, ám most hivatalosan is lezárult egy korszak. A Mesa fejlesztői eltávolították a VDPAU támogatását a Gallium3D kódbázisból, ezzel végleg a VA-API vált az elsődleges videógyorsítási megoldássá a nyílt forráskódú grafikus alrendszer számára.
A VDPAU és VA-API háttértörténete
A VDPAU eredetileg az NVIDIA saját fejlesztése volt, amelyet a hivatalos Linux grafikus meghajtójuk részeként tettek elérhetővé. Az API célja az volt, hogy videók hardveres gyorsítását tegye lehetővé X11 környezetben OpenGL együttműködéssel. Ezzel szemben a VA-API (Video Acceleration API) szélesebb körben elterjedt a Linux alkalmazások körében, jobban integrálható, és rugalmasabb támogatást kínál a különböző grafikus stackekben. Ennek köszönhetően a VA-API idővel átvette a vezető szerepet, míg a VDPAU egyre inkább háttérbe szorult.
Miért került sor a VDPAU eltávolítására?
A Mesa fejlesztői között David Rosca, az AMD mérnöke indítványozta a változtatást. A commit üzenetében világosan fogalmazott:
- A VDPAU kizárólag X11 és OpenGL interop támogatással rendelkezik, Wayland és Vulkan esetében nincs támogatás.
- Az API technikai korlátai miatt bizonyos videófolyamok helyes dekódolása nem lehetséges.
- Az alkalmazástámogatás mára nagyon korlátozott, a VA-API pedig minden esetben jobb alternatívát jelent.
A VDPAU eltávolítása a Mesa kódbázisából közel 9000 sornyi kód megszűnését eredményezte, ami könnyebb karbantarthatóságot és átláthatóbb fejlesztést biztosít.
A Linux alkalmazások és a jövő iránya
Mivel a legtöbb Linux-alkalmazás már régóta a VA-API-t támogatja, a váltás nem érinti hátrányosan a felhasználók többségét. Az NVIDIA hivatalos Linux illesztőprogramjai is egyre inkább a NVENC/NVDEC API-kra támaszkodnak, a VDPAU szerepe így gyakorlatilag megszűnt. A jövőben a fejlesztők nagy reményeket fűznek a Vulkan Video technológiához, amely már most is elérhető a Mesa Vulkan illesztőiben. Ez egy korszerűbb, platformfüggetlen megközelítést kínál, amely hosszú távon a Linux grafikus ökoszisztéma egyik alappillére lehet.
