protonscr

[BUG] v2.13.1–v2.13.5 no SteamVR/game audio, external apps work, v2.12.14 works

steamvrclosed bug
ValveSoftware/SteamVR-for-Linux#803 · opened 2025-09-04 by digitalcircuit · updated 2026-02-24 · 25 comments · github
Ddigitalcircuit 2025-09-04 github

Describe the bug
On Kubuntu 24.04 LTS, SteamVR beta v2.13.1 does not send audio to 2017 HTC Vive VR headset, even when system audio in the headset just fine. Reverting back to SteamVR v2.12.14 works.

On the broken beta build, switching output devices between Vive Analog Stereo and HDMI for Vive results in fractions of SteamVR audio briefly playing. System audio plays in headset as expected.

To Reproduce
Steps to reproduce the behavior:

  1. Launch SteamVR
  2. In SteamVR, launch VRChat
  3. Observe the lack of audio (e.g. no VRChat loading/login music)
  4. If silent, switch system audio output devices (e.g. HTC Vive, switching between Vive Analog Stereo and HDMI Out)
  5. Observe brief burst of audio
  6. Optional: try playing audio on the system, e.g. a YouTube video in your web browser

Expected behavior
SteamVR sends game audio to the VR headset, just like the rest of the system audio.

System Information:
Using latest Steam beta client and SteamVR beta.

Additional context
VRChat is on the public steam-audio-beta branch with Proton Experimental set to bleeding-edge beta (1756934802). I'm using a 2017 HTC Vive.

Yyoyobuae 2025-09-04 github

I'm experiencing the same bug while using ALVR for streaming VR to wireless headset.

SSpacefish 2025-09-04 github

Same issue for me, Audio doesn´t work in 2.13.1 from SteamVR applications (SteamHome, any game, Dashboard and so on).

I attached the System Report, there is nothing obvious i saw in the logs..

SteamVR-2025-09-04-PM_11_19_22.txt

Running any other audio source (Youtube in the browser) works and plays on the index headset, so it´s not an issue with the general audio system in linux IMHO.. I would expect the applications to directly use the audio device but they don´t show up in the Pipewire routing / don´t seem to output audio at all?
Maybe that´s an issue where the new SteamVR does somehow hide them / brings a incompatible audio client library in it´s pressure vessel / container?

My audio routing looks like this, i would expect to see "steamhome" or something like that to output audio as well, but it does not seem to connect to pipewire / alsa at all:

Edit: Games show up in the routing (VTOLVR.exe), but i am unable to connect them to any output, the connection is just removed once i try to make them.. There is no interesting output from wireplumber even when enabling debug logs..

It´s not a proton problem it seem, as the audio works when running non-VR games.. Seems to have something to do with the environment that SteamVR launches the games in IMHO.

Image
EElveviel 2025-09-08 github

Hello,
I have the same issue, no matter which version of SteamVR.
Fresh install of Ubuntu 24.04.3.
When I start SteamVR the Index show up in the system output device, but no matter what, no sound from the speakers.
I tested it in windows on the exact same hardware and it works flawlessly.

Ffarmboy0 2025-09-08 github

This looks like a regression in 2.13.1. I tried it and have the same problem with my Vive Pro. No more audio once SteamVR is started. Going back to 2.12.14 resolves this problem.

CcasKd-dev 2025-09-08 github

Beat Saber also has difficulties trying to use the headset on the 2.13.1 Beta while it works on stable. Playback keeps working for non-VR stuff to the audio sink, so this seems to be some Hint from SteamVR or a virtual output that is misbehaving.

SSpacefish 2025-09-08 github

I looked into a littlebit further, but i don´t see any difference in the setup.

Pressure vessel in which the games run seem to be the same version (steamrt sniper 3.0.20250826.159138),
They both have a pulse audio socket in /run/pressure-vessel/pulse/native...
The config in /run/pressure-vessel/pulse/config is identical (SHM=no)
They both have the exact same pulseaudio client libraries in them.
They both use proton 10.0

I don´t know which process creates this socket / if this is somehow magic in pressure-vessel? Maybe this is the part that changed?

This is the output from the pulseaudio client library when i run with PULSE_LOG=4 from the library inside the pressure-vessel

Parsing configuration file '/run/pressure-vessel/pulse/config'
/run/pressure-vessel/pulse/config.d does not exist, ignoring.
Using private memory pool with 1024 slots of size 64.0 KiB each, total size is 64.0 MiB, maximum usable slot size is 65472
Trying to connect to unix:/run/pressure-vessel/pulse/native...
SHM possible: no
Protocol version: remote 35, local 34
Negotiated SHM: no
Memfd possible: yes
Negotiated SHM type: private

BOTH versions (working 2.12.14 and not working 2.13.1) have these log messages:

ALSA lib pcm_dmix.c:1000:(snd_pcm_dmix_open) unable to open slave

And pressure-vesel tries to load a local pulse config, but it does not exist on my system (also on both versions):

pressure-vessel-wrap[58039]: I: Pulseaudio user configuration file '/home/spacy/.config/pulse/client.conf': Error opening file /home/spacy/.config/pulse/client.conf: No such file or directory

so i suspect that´s not the root cause of the problem.

The only libraries that seem to differ are the steamvr ones (vrclient.so) loaded in the game process.

Otherwise the code which passes through the pulse-audio socket seems to just do that and is here:
https://gitlab.steamos.cloud/steamrt/steam-runtime-tools/-/blob/main/pressure-vessel/flatpak-run-pulseaudio.c#L323

It essentialy tells bubblewrap to readonly bind mount your systems pulse audio socket into the pressure-vesel container under /run/pressure-vessel/pulse/native which is hard-coded.

puzzles me even more now :(

Ddigitalcircuit 2025-09-11 github

Brief update - this issue persists with SteamVR beta v2.13.2. (The news post didn't mention this so I figured it was still broken.)

SSpacefish 2025-09-11 github

Tried to debug it further yesterday, i see the game connecting pipewire-pulse as well as the sink.
However the games sink-input show "corked: true" and the sink-input is not connected to the sink.. If you manually try to connect it, the command will go though, but it won´t be connected afterwards..

on the sink-input pipewire shows 2^32 as the sink id (which does not exist) probably that´s how it signals that it´s not connected.

Guess it´s really something the steamVR environment (lib loaded in the game process) does with the games pulse client library which breaks it..

Ddigitalcircuit 2025-09-12 github

Another brief update - SteamVR beta v2.13.3 still has this audio issue. (As expected, since it wasn't in the release notes - but there's a lot going on behind the scenes so I feel it's worth retesting.)

CCptMcCartman 2025-09-12 github

I did not get any audio from any program launching through SteamVR beta. Neither the Headset-Audio nor the desktop audio devices had any audio. Without SteamVR it was playing all audio just fine. I hope this get's a fix soon.

Operating System: Kubuntu 25.04
KDE Plasma Version: 6.3.4
KDE Frameworks Version: 6.12.0
Qt Version: 6.8.3
Kernel Version: 6.14.0-29-generic (64-bit)
Graphics Platform: Wayland
Processors: 12 × AMD Ryzen 5 5600X 6-Core Processor
Memory: 31.3 GiB of RAM
Graphics Processor: AMD Radeon RX 6750 XT
Manufacturer: Micro-Star International Co., Ltd.
Product Name: MS-7C56
System Version: 2.0

SSgtmoustache 2025-09-16 github

Having the same issue on Pop!_OS 22.04 LTS on any version of SteamVR.

SSpacefish 2025-09-16 github

Ok i found a temporary solution!
If you manually link the games input to the output of the HDMI port via pw-link it works and audio starts to play in the headset.
Critically: pactl or the ui tools like helvum DO NOT WORK, you need to do it low level in pipewire!

These are the commands i ran to link VTOLVR to my headset (devices are different on your system)

pw-link "VTOLVR.exe:output_FL" "alsa_output.pci-0000_0d_00.1.hdmi-stereo-extra1:playback_FL"
pw-link "VTOLVR.exe:output_FR" "alsa_output.pci-0000_0d_00.1.hdmi-stereo-extra1:playback_FR"

get available nodes via
pw-link -lio

Maybe these log outputs have something to do with it?:

Sep 16 22:18:54 egal-12 wireplumber[3257]: wp-event-dispatcher: <WpAsyncEventHook:0x5b21c06aec60> failed: <WpSiStandardLink:0x5b21c07f3c70> link failed: 1 of 1 PipeWire links failed to activate
Sep 16 22:18:55 egal-12 wireplumber[3257]: wp-event-dispatcher: <WpAsyncEventHook:0x5b21c06aec60> failed: <WpSiStandardLink:0x5b21c0866840> link failed: some node was destroyed before the link was created
Sep 16 22:28:03 egal-12 wireplumber[3257]: wp-event-dispatcher: <WpAsyncEventHook:0x5b21c06aec60> failed: <WpSiStandardLink:0x5b21c084bbd0> link failed: 1 of 1 PipeWire links failed to activate
Sep 16 22:28:41 egal-12 wireplumber[3257]: wp-event-dispatcher: <WpAsyncEventHook:0x5b21c06ba930> failed: failed to activate item: Object activation aborted: proxy destroyed
Sep 16 22:34:01 egal-12 wireplumber[3257]: wp-event-dispatcher: <WpAsyncEventHook:0x5b21c06aec60> failed: <WpSiStandardLink:0x5b21c06283b0> link failed: 1 of 1 PipeWire links failed to activate
AArchivistKitsune 2025-09-20 github

I'm experiencing the same bug while using ALVR for streaming VR to wireless headset.

Same here - Manjaro XFCE, Liquorix 6.16 series kernel.

Stable branch still outputs audio however.

As an aside: The newly usable Steam Link functionality 'works' - tested using VR Chat. All sound plays but upon login finishing and it loading me into my home world, the program appears to lock up, forcing me to terminate it. Do with this aside, what ya'll will.

RReveler9 2025-10-05 github

I've got Debian 13 using SteamVR beta 2.13.4 and I'm also getting this. I tried using pavucontrol to see if I could set them to my speakers but they were just on "Unknown output" and would go right back when I selected anything else. I could hear a burst of sound from the VR applications when I changed my speakers in settings. I used Spacefish's solution of manually linking the game to my headphones with pw-link and it worked.
(Cheers for that Spacefish :D)

?ghost 2025-10-08 github

Same issue with the latest SteamVR version on my end with EndevourOS, kernel 6.12.51-1-lts, using the pipewire-pulse audio plugin. The "previous" SteamVR version works fine.

Ddigitalcircuit 2025-10-09 github

I tested SteamVR beta 2.13.5 this evening and the bug persists. SteamVR 2.12.14 works as before.

EElveviel 2025-10-12 github

It's still doesn't work for me. No matter which versions.
Even with Spacefish's solution : the link is correctly established from the beginning.

SSpacefish 2025-10-13 github

It's still doesn't work for me. No matter which versions. Even with Spacefish's solution : the link is correctly established from the beginning.

Did you check that the audio output volume is turned up all the way everywhere? In-Game in SteamVR and in your System?

If you are using an Index, it want´s 48kHz audio output, if you drive it with 44.1kHz it is hit and miss. Funny: The microphone does not work on the index if you set the audio output to anything other than 48kHz (not the microphone which is connected via USB, but rather the audio output which is routed through your GPU).

EElveviel 2025-10-14 github

Yes everything is turned up all the way and it is set at 48kHz.
I find the issue and it's not a steamVR one, more an Ubuntu / Nvidia one ?.

In short : whatever I tried to do the sound always came out from my monitor (DP 1 on an Nvidia card, I checked this by plug-in an headset on the monitor), even when the output sound was selected on the Index port (DP 2).

I find the same issue here : https://discourse.ubuntu.com/t/audio-outputs-from-wrong-nvidia-graphics-card-port/60441
To resolve the issue : spa-acp-tool -c 0 lv
The audio will start going to the correct output (I need to run this each time).

FFusl 2025-10-19 github

This is still an issue on 2.13.6. I don't use the Index/VR headphones but separate headphones instead and the application I've tested this with is VRChat running on Arch Linux with KDE. Even if the application is launched outside of SteamVR in non-VR mode, starting up SteamVR while the application is already running instantly kills any audio output. Reverting to the non-beta of SteamVR is currently the only way to fix this.

RRedstoneLP2 2025-10-21 github

I think I'm encountering the same issue, but it seems to also extend to video over pipewire routing.

Using a Pico 4 Headset with Steamlink and ALVR, both giving the same result: automatic pipewire routing failing.

Arch Linux
Kernel 6.17.3-arch2-1
KDE Plasma 6.4.5 wayland
Pipewire 1.4.9
SteamVR Beta 1.13.6
Steam Version 1760657741

SSpacefish 2025-11-11 github

The latest beta seems to have fixed it for me. The one from Nov 11 ( bin/version.txt is 1762827110 ). So maybe that´s 2.13.7?

Ddigitalcircuit 2025-11-12 github

I can confirm - with SteamVR 2.13.7 released today, audio worked just fine for me for over an hour. 🎉

Thanks to Valve and folks for fixing this before the stable SteamVR update! Now I can hop back on the beta train.

And Spacefish, thanks for the detailed investigation and finding a workaround.

SScottCarammell 2026-02-24 github

Had this issue for a while, never fixed for me. It's worsened now and now audio doesn't play out of the headset at all, even from external apps. Persists after several reboots, unplugs, and on both stable and beta branches. All AMD computer, Debian 13, Valve Index

SSpacefish 2026-02-24 github

@ScottCarammell di you make sure that the headset receives 48kHz audio? For me it sometimes tries to send 44.1kHz instead of 48kHz.. In that case you have no audio playback and the microphone does not work :(

Proton versions