Trying to use my OpenSuSE machine to stream games over Steam Remote Play to an orange pi 5 board in the livingroom but steam requires 32bit VAAPI libraries to enable hardware encoding on AMD cards. Returns this error:
Trying to create an encoder for streaming: [hardware_enabled=true][hardware_suppressed=false]
Allowed Codecs: 5,4
Created encoder VAAPI for codec 5
CGameStreamVideoStageVAAPI: Reinitializing 1920x1080 at 30000 Kbit/s and 119.75 FPS with quality 1
ffmpeg verbose: libva: VA-API version 1.20.0
ffmpeg verbose: libva: Trying to open /usr/lib/dri/radeonsi_drv_video.so
ffmpeg verbose: libva: va_openDriver() returns -1
ffmpeg error: Failed to initialise VAAPI connection: -1 (unknown libva error).
CGameStreamVideoStageVAAPI: Failed to create device context: Input/output error
Failed to pre-process frame
Encoder stage failed [type=5, codec=5]
Packman has Mesa-libva-32bit for tumbleweed and slowroll. But nothing for Leap 15.6
Obs has packages but they’re for Mesa 23.3.3 whereas lastest in Leap in 23.3.4
Is there another way to get this package? I’m not familiar enough with compiling libraries or packaging rpms to do it myself. Appreciate any help
I should mention that hardware encoding works using the flatpak of steam, but I’d like to avoid this as it has issues with proton, directories, and controllers.
No really. Leap is 64 bit and only selected packages have 32 bit variants. Your best bet is to clone Mesa on OBS and rebuild enabling 32 bit Mesa-libva.
It may also be necessary to remove the steam runtime version of libva, in order to force it to use system libraries. The current library in use can be found by using:
If this shows locations in ~/.local/Share/steam steam is still using its packaged version of libva. This can be rectified by deleting the libva library files at ~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libva*, so that steam falls back to the system libraries.