FS#44312 - [libva-vdpau-driver] Create a symlink for Nouveau
Attached to Project:
Arch Linux
Opened by Daniel (weirddan455) - Monday, 23 March 2015, 11:32 GMT
Last edited by freswa (frederik) - Tuesday, 24 March 2020, 18:58 GMT
Opened by Daniel (weirddan455) - Monday, 23 March 2015, 11:32 GMT
Last edited by freswa (frederik) - Tuesday, 24 March 2020, 18:58 GMT
|
Details
We already have symlinks for the proprietary Nvidia driver
and for the S3 driver but Nouveau is missing and symlinking
to this driver is the only way I've found to get VA-API to
work.
To reproduce: 1. Start vlc from console 2. Go to Tools -> Preferences -> Input/Codecs 3. Change Hardware-accelerated decoding to "VA-API video decoder via X11" 4. Play a video that uses a codec which can be hardware accelerated (H.264 for example) Note the following error: libva info: VA-API version 0.37.0 libva info: va_getDriverName() returns 0 libva info: Trying to open /usr/lib/dri/nouveau_drv_video.so libva info: va_openDriver() returns -1 [00007f4f04049348] vaapi_x11 generic error: Failed to initialize the VAAPI device Now: cd /usr/lib/dri ln -s vdpau_drv_video.so nouveau_drv_video.so And it works: libva info: VA-API version 0.37.0 libva info: va_getDriverName() returns 0 libva info: Trying to open /usr/lib/dri/nouveau_drv_video.so libva info: Found init function __vaDriverInit_0_35 libva info: va_openDriver() returns 0 [00007f69c0ed5fc8] avcodec decoder: Using Splitted-Desktop Systems VDPAU backend for VA-API - 0.7.4 for hardware decoding. Note that I also tried symlinking to gallium_drv_video.so from libva-mesa-driver but that did not work (not even sure what, if any, cards that driver is good for anymore.) |
This task depends upon
Closed by freswa (frederik)
Tuesday, 24 March 2020, 18:58 GMT
Reason for closing: None
Additional comments about closing: This seems pretty stalled to me. If it's still an issue, please fill a re-open request. Thank you :)
Tuesday, 24 March 2020, 18:58 GMT
Reason for closing: None
Additional comments about closing: This seems pretty stalled to me. If it's still an issue, please fill a re-open request. Thank you :)
Without symlink:
$ vainfo
libva info: VA-API version 0.37.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/dri/nouveau_drv_video.so
libva info: va_openDriver() returns -1
vaInitialize failed with error code -1 (unknown libva error),exit
With symlink:
$ vainfo
libva info: VA-API version 0.37.0
libva info: va_getDriverName() returns 0
libva info: Trying to open /usr/lib/dri/nouveau_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.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
VAProfileVC1Simple : VAEntrypointVLD
VAProfileVC1Main : VAEntrypointVLD
VAProfileVC1Advanced : VAEntrypointVLD
FS#44928VLC is much better off with VDPAU anyway, due to the lack of zero-copy VAAPI support, so if your driver supports VDPAU (nouveau does), use that.
Basically: don't use wrappers, and configure VLC to use VDPAU.