VA-API combines an API specification and an open-source library, consisting of the primary library source and supported graphics backends to assist every compatible hardware vendor’s driver-specific acceleration. Intel designed the library to help with the company’s graphics hardware acceleration, especially when encoding and decoding video on Intel’s graphics hardware platforms. Intel Arc GPUs offer support of VA-API but also oneVPL, a single library that is part of the oneAPI suite. The library provides AV1 video encoders created by Intel and other video codec formats. Gallium3D’s architecture is created to assist in developing 3D graphics drivers. It is part of the Mesa 3D Graphics Library, a small amount of the complete open-source Mesa Project. VA-API is also used as a “state tracker” for the Gallium3D and the Poulsbo driver. Poulsbo was Intel’s initial Atom processor that offered “GMA 500” graphics. Its 2D integration has been covered in several struggles and inconsistencies, and it was reported two years ago that the company would remove any support. However, it is still available in the current VA-API. In the newest update, the Intel team has added 245 files and deleted 41 to improve the VA-API library. Included in the update was streamlining the X11 application manager (assists with multiple displays and input devices), removing some of the code to allow the DRM Render-Nodes to process more efficiently, Android support adjustments, Meson compiler system additions, and newer ray tracing enhancements. The full list of changes to Libva 2.16.0 is listed below.
add: Add HierarchicalFlag & hierarchical_level_plus1 for AV1e. dep: Update README.md to remove badge links dep: Removed waffle-io badge from README to fix the broken link dep: Drop mailing list, IRC, and Slack autotools: use wayland-scanner private-code autotools: use the wayland-scanner.pc to locate the prog meson: use wayland-scanner private-code meson: request native wayland-scanner meson: use the wayland-scanner.pc to locate the prog meson: set HAVE_VA_X11 when applicable style: Correct slight coding style in several new commits trace: add Linux ftrace mode for va trace trace: Add missing pthread_mutex_destroy drm: remove no-longer-needed X == X mappings drm: fallback to drm driver name == va driver name drm: simplify the mapping table x11: simplify the mapping table Android: open() with O_CLOEXEC for device fd Android: remove convoluted open_device() helper android: drop va_fool references ci: strengthen ci with -Werror ci: va/x11/nvctl: fix Wdeprecated-non-prototype on close_display ci: add clang-15 coverage and rearrange runners ci: upgrade FreeBSD to 13.1
Users interested in seeing the changes in the history of Libva and comparing the current update against the initial implementation can view the Intel Libva GitHub page for further details. News Sources: Phoronix, Intel Libva GitHub page