protonscr

`libva: va_openDriver() returns -1` on host when attempting to stream games

steamclosed Distro Family: Arch
ValveSoftware/steam-for-linux#13380 · opened 2026-07-02 by mkopec · updated 2026-07-03 · 4 comments · github
Mmkopec 2026-07-02 github

Your system information

  • Steam client version (build number or date): 1782952760
  • Distribution (e.g. Ubuntu): Arch
  • Opted into Steam client beta?: [Yes/No] Yes
  • Have you checked for system updates?: [Yes/No] Yes
  • Steam Logs: steam-logs.tar.gz
  • GPU: Radeon 9070 XT

Please describe your issue in as much detail as possible:

Describe what you expected should happen and what did happen. Please link any large code pastes as a Github Gist

When attempting to stream games from a Linux host, with hardware encoding enabled, steam outputs the following and falls back to software x264 encoding:

CGameStreamVideoStageVAAPI: Reinitializing 2560x1440 at 40000 Kbit/s and 60.00 FPS with quality -1
ffmpeg verbose: libva: VA-API version 1.22.0
ffmpeg verbose: libva: Trying to open /usr/lib32/dri/radeonsi_drv_video.so
ffmpeg error: libva: /usr/lib32/dri/radeonsi_drv_video.so has no function __vaDriverInit_1_0
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

This is likely because Arch updated libva recently, and does not expose the vaDriverInit_1_22 entrypoint anymore:

michal@aether ~> nm -D /usr/lib/dri/radeonsi_drv_video.so | grep vaDriverInit
00000000000cbc60 T __vaDriverInit_1_23@@libgallium-26.1.3-arch3.1.so

It would seem that libva in steam linux runtime needs updating. I tried SteamRT3 on the streaming host, but then I get authentication errors when lauching a stream, but that's a separate issue.

Steps for reproducing this issue:

  1. Run Steam on Arch
  2. Try to initiate stream from Steam Deck
Kkisak-valve maintainer 2026-07-02 github

Hello @mkopec, it should be noted that the error you're showing is 32 bit libva, and the library you're spot checking is 64 bit mesa. /usr/lib32/dri/radeonsi_drv_video.so should be coming from your system installed lib32-mesa package, not the Steam runtime.

Blind guess, is a runtime dependency like lib32-libva missing?

Mmkopec 2026-07-03 github

It looks like lib32-libva is installed on my system

michal@aether ~> yay -Qi lib32-libva
Installed From  : multilib
Name            : lib32-libva
Version         : 2.22.0-1
Description     : Video Acceleration (VA) API for Linux (32-bit)
Architecture    : x86_64
URL             : https://01.org/linuxmedia/vaapi
Licenses        : MIT
Groups          : None
Provides        : libva-drm.so=2-32  libva-glx.so=2-32  libva-wayland.so=2-32  libva-x11.so=2-32  libva.so=2-32
Depends On      : lib32-libdrm  lib32-libgl  lib32-libx11  lib32-libxext  lib32-libxfixes  lib32-wayland  libva
Optional Deps   : lib32-libva-intel-driver: backend for Intel GPUs (<= Haswell)
                  lib32-libva-mesa-driver: backend for AMD and NVIDIA GPUs [installed]
Required By     : cachyos-gaming-meta  proton-cachyos-slr  steam
Optional For    : None
Conflicts With  : None
Replaces        : None
Installed Size  : 281.51 KiB
Packager        : T.J. Townsend <[email protected]>
Build Date      : Wed 07 Aug 2024 12:32:26 AM CEST
Install Date    : Thu 02 Jul 2026 10:43:24 PM CEST
Install Reason  : Explicitly installed
Install Script  : No
Validated By    : Signature

I also checked 32-bit mesa:

michal@aether ~> nm -D /usr/lib32/dri/radeonsi_drv_video.so | grep vaDriverInit
000d2c40 T __vaDriverInit_1_23@@libgallium-26.1.3-arch3.1.so
Mmkopec 2026-07-03 github

Oh, I just noticed arch has desync'd versions of libva and lib32-libva. maybe lib32-libva just needs to be updated

Mmkopec 2026-07-03 github

Yeeeah, i just updated lib32-libva and that fixed it. I had assumed that steam was using its own version, since it's present in the steam runtimes, but apparently not.

Closing as this is an Arch bug.

Nothing extracted yet.