desktop-packages team mailing list archive
-
desktop-packages team
-
Mailing list archive
-
Message #155192
[Bug 1481832] Re: VA-API implementation for gallium missing
The native gallium vdpau and vaapi drivers accelerate video decode
directly using UVD. Shaders are only used for codecs that were not
directly supported by older UVD hardware. There is no need to use any
sort of vdpau <-> vaapi translation layers; just use the native backend
for whichever API you want to use.
--
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to mesa in Ubuntu.
https://bugs.launchpad.net/bugs/1481832
Title:
VA-API implementation for gallium missing
Status in mesa package in Ubuntu:
Confirmed
Bug description:
[needs-packaging] mesa
Please include "gallium_drv_video.so" which is a native va-api state tracker for mesa(gallium).
URL: http://mesa3d.sourceforge.net/
URL: http://freedesktop.org/wiki/Software/vaapi/ #intel/vdpau
License: http://www.mesa3d.org/license.html
Notes:
Currently (as of today) in ubuntu 15.10 nightly amd64, va-api(vaapi) on AMD/Ati radeon opensource display hardware is using a vdpau backend 0.7.4 by Splitted-Desktop Systems (wrapper) on gallium r600. Although its possible and probably preferred (better performance less copying) to use a native implementation which mesa(gallium) 10.4 and higher delivers in a form of a va-api state tracker.
vainfo #current default setup vdpau backend
libva info: VA-API version 0.38.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/r600_drv_video.so
libva info: Found init function __vaDriverInit_0_37
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.38 (libva 1.6.0)
vainfo: Driver version: Splitted-Desktop Systems VDPAU backend for VA-API - 0.7.4
vainfo: Supported profile and entrypoints
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileMPEG4Simple : VAEntrypointVLD
VAProfileMPEG4AdvancedSimple : VAEntrypointVLD
VAProfileH264Baseline : VAEntrypointVLD
VAProfileH264Main : VAEntrypointVLD
VAProfileH264High : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
The preferred setup needs that "gallium_drv_video.so" binary which is
currently unavailable in ubuntu and debian. As an example I added a
package/binary from archlinux. Copying the gallium_drv_video.so to
/usr/lib/x86_64-linux-gnu/dri/ and symlinking(correcting) the
libLLVM-3.6.so to arch-linux default /usr/lib/ location and exporting
a variable was enough to make it work!
https://www.archlinux.org/packages/extra/x86_64/libva-mesa-driver/
#example by archlinux
export LIBVA_DRIVER_NAME=gallium
vainfo #preferred setup using gallium va-api from arch-linux (symlinked libLLVM-3.6.so to /usr/lib)
libva info: VA-API version 0.38.0
libva info: va_getDriverName() returns 0
libva info: User requested driver 'gallium'
libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/gallium_drv_video.so
libva info: Found init function __vaDriverInit_0_38
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.38 (libva 1.6.0)
vainfo: Driver version: mesa gallium vaapi
vainfo: Supported profile and entrypoints
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileMPEG4Simple : VAEntrypointVLD
VAProfileMPEG4AdvancedSimple : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
VAProfileH264Baseline : VAEntrypointVLD
VAProfileH264Main : VAEntrypointVLD
VAProfileH264High : VAEntrypointVLD
I guess this binary "gallium_drv_video.so" might be available as a
compile flag in the current mesa implementation... intel and vdpau has
their own current implementation in a separate libva branch
http://cgit.freedesktop.org/vaapi/libva/ ?
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/mesa/+bug/1481832/+subscriptions