You are not logged in.
vainfo gives:
$ vainfo
libva info: VA-API version 0.37.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/dri/r600_drv_video.so
libva info: va_openDriver() returns -1
vaInitialize failed with error code -1 (unknown libva error),exit
lspci |grep VGA gives:
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] RV770 [Radeon HD 4870]
Opening VLC (freshly installed) I get:
[user@arch]$ vlc
VLC media player 2.2.1 Terry Pratchett (Weatherwax) (revision 2.2.1-0-ga425c42)
[0000000000d29118] core libvlc: Running vlc with the default interface. Use 'cvlc' to use vlc without interface.
Qt at-spi: error getting the accessibility dbus address: "Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken."
Connected to accessibility bus at: "unix:abstract=/tmp/dbus-ZAvZeuCuKM,guid=c563a095d40bf6bb99af494255561953"
Registered DEC: true
Registered event listener change listener: true
Failed to open VDPAU backend libvdpau_r600.so: cannot open shared object file: No such file or directory
Failed to open VDPAU backend libvdpau_r600.so: cannot open shared object file: No such file or directory
Playing video files still work, somehow. But starting vlc takes minutes when it should take a few seconds tops.
I'm using xf86-video-ati (1:7.5.0-2) since proprietary drivers no longer support 4k-series.
libvdpau 1.1-1 & libvdpau-va-gl 0.3.4-1 are installed.
Found at the wiki
grep -i vdpau ~/.local/share/xorg/Xorg.0.log
would help identify which driver is in use... but getting result "No such file or directory".
My guess is I need to export VDPAU_DRIVER, but what value do I set? Do I need LIBVA_DRIVER_NAME=vdpau too?
Thank you in advance, any advice appriciated.
Last edited by am2del (2015-05-16 04:28:41)
Offline
https://bbs.archlinux.org/viewtopic.php … 9#p1511239
Find out where your X logs are stored.
Offline
Thank you.
Managed to get somewhere by installing libva-vdpau-driver and then link
ln -s /usr/lib/dri/vdpau_drv_video.so /usr/lib/dri/r600_drv_video.so
Now error free result from checking vainfo
[user@arch]$ vainfo
libva info: VA-API version 0.37.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/dri/r600_drv_video.so
libva info: Found init function __vaDriverInit_0_35
libva info: va_openDriver() returns 0
vainfo: VA-API version: 0.37 (libva 1.5.1)
vainfo: Driver version: Splitted-Desktop Systems VDPAU backend for VA-API - 0.7.4
vainfo: Supported profile and entrypoints
VAProfileMPEG2Simple : VAEntrypointVLD
VAProfileMPEG2Main : VAEntrypointVLD
VAProfileH264Baseline : VAEntrypointVLD
VAProfileH264Main : VAEntrypointVLD
VAProfileH264High : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
Offline
Don't do that. Don't use wrappers, they often cause more resource usage than software decoding. Especially with VLC, which doesn't actually have good VAAPI support - it copies decoded frames back to system memory using an inefficient method.
Use native VDPAU, by installing mesa-vdpau, that's the package that contains libvdpau_r600.so. Then configure VLC to use VDPAU for both decoding and output, that way you'll get zero-copy playback.
BTW, even for using VAAPI, you should *not* use libva-vdpau-driver, you should instead use libva-mesa-driver and do
ln -s /usr/lib/dri/gallium_drv_video.so /usr/lib/dri/r600_drv_video.so
But, like I said, VLC's VDPAU support is better than its VAAPI support. mpv has great support for both.
Offline
Don't do that. Don't use wrappers, they often cause more resource usage than software decoding. Especially with VLC, which doesn't actually have good VAAPI support - it copies decoded frames back to system memory using an inefficient method.
Use native VDPAU, by installing mesa-vdpau, that's the package that contains libvdpau_r600.so. Then configure VLC to use VDPAU for both decoding and output, that way you'll get zero-copy playback.
BTW, even for using VAAPI, you should *not* use libva-vdpau-driver, you should instead use libva-mesa-driver and do
ln -s /usr/lib/dri/gallium_drv_video.so /usr/lib/dri/r600_drv_video.so
But, like I said, VLC's VDPAU support is better than its VAAPI support. mpv has great support for both.
Sorry for the slow response, been rather busy lately.
Great advice, done some days of testing on each and MESA clearly gives better overall results for my configuration. Thanks a lot Gusar.
Offline
Hi,
I have struck the same problem using mpv, but the above solutions do not work for me.
I installed mesa-vdpau and also libva-mesa-driver ... but there is no driver under /usr/lib/dri ...
Any suggestions anyone.
If I do the above linking with gallium, I get
libva error: dlopen of /usr/lib/dri/r600_drv_video.so failed: /usr/lib/dri/r600_drv_video.so: undefined symbol: _ZN4llvm19RTDyldMemoryManager25getSymbolAddressInProcessERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE
libva info: va_openDriver() returns -1
Last edited by bmentink (2016-01-20 23:11:01)
Offline
Don't use VAAPI if you don't have to (the proper way to test for VDPAU support is using vdpauinfo) and there were changes and the corresponding vdpau files are now in usr/lib/vdpau/libvdpau_r600.so , but again, you don't really want/need to use VAAPI with a radeon card, their VDPAU support is better.
Offline
Thanks for that.
I had discovered I did not have the correct vdpau lib installed, I got rid of the conflicting ones and just left mesa-vdpau, which is the correct one for ATI/AMD cards.
vdpauinfo now returns something sensible ..
Offline