It has been failing for a while here. Had 2 use alsa output. For what ever reason CONFIG_SND_PROC_FS=y has then been set here. pipewire output then started to work. Went back & forth to double check, successfully. Reproducible: Always
Just to be clear: You experience failures when running with a custom configured Linux Kernel with CONFIG_SND_PROC_FS!=y, right? Unfortunately I have been unable to get a custom configured Kernel working on my laptop due to some weird Firmware issues, so I can only do tests with sys-kernel/gentoo-kernel, which has CONFIG_SND_PROC_FS=y set. Also, what do you mean with “fails as a service”? Does this mean MPD only fails when run via your system's service manager (OpenRC, systemd, etc.) or does this issue occur regardless of how MPD is started?
(In reply to Adrian Schollmeyer from comment #1) > Also, what do you mean with “fails as a service”? Does this mean MPD only > fails when run via your system's service manager (OpenRC, systemd, etc.) or > does this issue occur regardless of how MPD is started? Also, does it fail to start? Any output in journal/syslog/whatever? Or does it fail at runtime?
> You experience failures when running with a custom configured Linux Kernel with CONFIG_SND_PROC_FS!=y, right? snippet from ~/.config/mpd/mpd.conf: audio_output { type "pipewire" name "Pipewire Sound Server" } doesn't work indeed. > What do you mean with “fails as a service”? Only [pipewire] fails as a service is relevant there, as described above. > Or does it fail at runtime? Yes. Remaining is paused state. terminal echoes ~ "No output available" upon resume. snippet from ~/.config/mpd/mpd.conf: audio_output { type "alsa" name "My ALSA Device" device "hw:0,0" # optional ## mixer_type "hardware" # optional ## mixer_device "default" # optional ## mixer_control "PCM" # optional ## mixer_index "0" # optional }works fine when configured.
> this issue occur regardless of how MPD is started. Indeed.
I think the culprit isn't MPD, but rather PipeWire itself, which uses procfs to obtain info about the sound cards. See this comment [0] in the PipeWire source code. @sam/leio: Since you are the maintainers of media-video/pipewire, could you please have a look at this? I think this might require enforcing CONFIG_SND_PROC_FS!=n in media-video/pipewire. @CaptainBlood: You might wanna try reproducing this issue with PipeWire clients other than MPD, since you actually have a Kernel with that config option disabled. I suspect you might be able to reproduce this with software other than MPD. [0] https://gitlab.freedesktop.org/pipewire/pipewire/-/blob/1c9ffef813232d0a80b6597476d01f5e28864709/spa/plugins/alsa/alsa-udev.c#L303-311
According to the Wiki [0] CONFIG_SND_PROC_FS is already required for PipeWire to work. It's up to the maintainers of media-video/pipewire if they'd like to check for the Kernel config option in the ebuild, but it's definitely not a problem with media-sound/mpd. [0] https://wiki.gentoo.org/wiki/PipeWire#Kernel
Contrary to wiki, CONFIG_SND_VERBOSE_PROCFS isn't set here. Not saying it may help in some cases, though.