-
Notifications
You must be signed in to change notification settings - Fork 56
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Audio profile switching under steam-session seems broken #182
Comments
Tried older jovian and nixpkgs revs along with older kernel versions and the issue persists. I can only assume this seems to stem from a Steam update itself? Would make sense as to why this only occurs in steam-session then. Also minor unrelated thing I stumbled upon during testing, this file is unused nowadays and could be cleaned up - didn't think it'd warrant opening up a PR. |
It is in fact used. |
Looking at the derivation pointed to by the ALSA_CONFIG_UCM2 envvar, it seems to use alsa-ucm-conf's ucm.conf instead. Only jupiter-hw-support's conf files from conf.d/acp5x/ are applied here so it goes unused, unless I'm missing something. Also I tried overriding that file with jupiter-hw-support's version but that simply broke all sound for me. |
Oh, sorry, got things mixed up there for a bit. A PR to remove that stuff would be absolutely welcome. |
Can you test #187 ? |
Unfortunately still occurs after applying #187 and rebooting |
It sounds like Pipewire might not be picking up the config properly for some reason, I'm looking into it. |
Nevermind, it does switch to headphones when I plug them in, but I can't tell it where to output sound though steam |
Gave pulseaudio a try as well with
and similar behavior occurs there as well: playing audio through speakers and changing volume works just fine, when plugging in headphones it only switches output when re-selecting the Speakers option in Steam and the volume state only applies to speakers; changing volume does nothing for headphone output. On a desktop session everything works fine, same as pipewire. |
After applying #187 again with the newest commits wireplumber stopped complaining in the logs and I can now consistently switch between speaker and headphones output. However going from speaker to headphones and back to speaker output Steam still gets "stuck" on the headphones output device; whilst the audio successfully plays through speakers Steam still displays and applies changes to the volume state for the headphones output, whilst also not applying changes to the Output Device option as was the case previously. |
Well, that's an improvement. I guess now we just have to sniff the Pipewire bus and see what Steam is doing... This would have been a lot easier if I had a set of wired headphones, tbh. |
Interesting, just switched my nixpkgs flake input to |
It may just be some Pipewire bug. 0.3.83 is in staging-next now, so we'll see in a bit. |
Gave the version in staging-next a try and sadly it still occurs (assuming setting |
I've been able to pinpoint it to this commit which is a mere pipewire version bump (0.3.76 to 0.3.77). So this just seems to be a regression coming from pipewire itself. From what I can see SteamOS ships with 0.3.62 so it makes sense this issue doesn't occur there. |
Does 0.3.76 work entirely correctly, or does the switching through Steam still not work? |
Actually now I can't select |
Would downgrading to 0.3.62 do anything? And the problem currently is that when you plug the headphones in, it doesn't automatically switch, but you can change it fine manually when it's plugged in and you switch it through steam settings? Apparently 0.3.62 was never packaged in nixpkgs, so I'll maybe see and try an overlay when I'm home. https://lazamar.co.uk/nix-versions/?channel=nixpkgs-unstable&package=pipewire . |
Would be worth a try.
With 0.3.76, correct. I do remember that being an issue on SteamOS also when I last used it however - which was more than half a year ago.
I'd set |
I finally got the chance to do some testing, but reproducing it is kind of internmittent. I got the bug to happen only once, which I couldn't fix at all by selecting any of the options. Then, I restarted, and the bug was still present. After, I selected speakers, and it now switched between headphones and speakers as you expect - when you plug it in, it switches to headphones. But now I can't force speakers - if headphones are plugged in, it always plays through it, even if I select speakers. Now, even if I restart, I can't get the bug at all ever. Does anyone know if selecting speakers while headphones are plugged in still plays audio through headphones? This is through the latest pipewire - testing 0.3.63 right now, and if that doesn't fix it, will do 0.3.62 because 63 is packaged in nixpkgs. |
Can someone try #216 ? |
It still gets put into the same weird state after plugging and unplugging with the latest pipewire and #216 Edit: Additionally pipewire 0.3.76 breaks with that PR applied. Seems like it requires a library from one of the dependencies only available in a newer rev.
|
Tried #216 and the only change I noticed is a new device (Speakers (Tuned)) showing up that doesn't work |
The changes #216 brings in should only affect the OLED model. |
Not necessarily, there's some upstream wireplumber stuff in there too, but it doesn't seem related. |
Think this is fixed now, installed jovian on my gpd win max 2 and I can switch between my bluetooth headphones and the speakers just fine |
Can confirm I'm not hitting the issue anymore on latest pipewire and jovian |
Switching from speakers to headphones output requires me to select a different output device in Steam settings and switch back afterwards. However going back from headphones to speakers results in audio output still attempting to go through the headphones and until headphones are plugged back in forces me to the "External Device" output device until Steam is restarted.
Only relevant log in
journalctl -xe
I could find is the following:Steps to reproduce:
The text was updated successfully, but these errors were encountered: