Originally discussed as a side issue in ValveSoftware/Source-1-Games#8018.
SDL3 seems to be reporting both an application's name and an audio stream for the PipeWire backend even if both share the same name.
SDL AUDIO = pulseaudio ; STEAM COMPAT = unset (SDL3)
SDL AUDIO = pulseaudio ; STEAM COMPAT = classic (pure SDL2)
SDL AUDIO = pipewire ; STEAM COMPAT = unset (SDL3)
SDL AUDIO = pipewire ; STEAM COMPAT = classic (pure SDL2)
(same as SDL AUDIO = pulseaudio ; STEAM COMPAT = classic (pure SDL2))
The tests above were done for the Steam Linux Runtime (which includes SDL) to demonstrate the differences:
- Pure SDL2 ("classic" mode, non-sdl2-compat), either with PipeWire or PulseAudio, always reports just the binary file name (
tf_linux64, for Team Fortress 2).
- SDL3, via sdl2-compat, has different behavior depending on the audio backend:
From my point of view as an end-user, it does not make sense for it to display tf_linux64 with SDL3 + PipeWire. I believe this to be a SDL regression rather than a problem with KDE Plasma's sound applet, since previous iterations (PulseAudio and/or SDL2) would not report it twice.
I think it would be desirable to make it so SDL3 + PipeWire only reports one instance of tf_linux64, especially because it seems to be just a single audio stream, so there is no advantage, as I see it, from reporting both the app name and the stream name, even though that may be correct in PipeWire terms.
CC @smcv
Thank you for your attention.
Originally discussed as a side issue in ValveSoftware/Source-1-Games#8018.
SDL3 seems to be reporting both an application's name and an audio stream for the PipeWire backend even if both share the same name.
SDL AUDIO = pulseaudio ; STEAM COMPAT = unset (SDL3)
SDL AUDIO = pulseaudio ; STEAM COMPAT = classic (pure SDL2)
SDL AUDIO = pipewire ; STEAM COMPAT = unset (SDL3)
SDL AUDIO = pipewire ; STEAM COMPAT = classic (pure SDL2)
(same as
SDL AUDIO = pulseaudio ; STEAM COMPAT = classic (pure SDL2))The tests above were done for the Steam Linux Runtime (which includes SDL) to demonstrate the differences:
tf_linux64, for Team Fortress 2).PW_KEY_APP_NAMEandPW_KEY_MEDIA_NAME, according to McVittie's logic.From my point of view as an end-user, it does not make sense for it to display
tf_linux64with SDL3 + PipeWire. I believe this to be a SDL regression rather than a problem with KDE Plasma's sound applet, since previous iterations (PulseAudio and/or SDL2) would not report it twice.I think it would be desirable to make it so SDL3 + PipeWire only reports one instance of
tf_linux64, especially because it seems to be just a single audio stream, so there is no advantage, as I see it, from reporting both the app name and the stream name, even though that may be correct in PipeWire terms.CC @smcv
Thank you for your attention.