After upgrading to Slackware 15.0 I kept using Bluetooth for headphones and only later found out that sound through wires didn’t work if plugged into front panel. While advices on the Web immediately jump to module settings I realized that on 14.2 everything worked with Alsa and PulseAudio, so usage of PipeWire might have contributed to the issue.
Alsa devices
Since dmesg
included this line:
[ 4.033864] input: HDA Intel PCH Front Headphone as /devices/pci0000:00/0000:00:1b.0/sound/card0/input7
I looked at the output of aplay -L
and found:
front:CARD=PCH,DEV=0 HDA Intel PCH, ALC887-VD Analog Front output / input
This is where I went looking in PipeWire configuration files for ways to enable
this somehow, because pavucontrol
didn’t present a corresponding entry.
PipeWire configuration for front panel
pipewire.conf
copied from /usr/share/pipewire/
contains this commented-out
section:
# This creates a single PCM source device for the given # alsa device path hw:0. You can change source to sink # to make a sink in the same way. #{ factory = adapter # args = { # factory.name = api.alsa.pcm.source # node.name = "alsa-source" # node.description = "PCM Source" # media.class = "Audio/Source" # api.alsa.path = "hw:0" # api.alsa.period-size = 1024 # api.alsa.headroom = 0 # api.alsa.disable-mmap = false # api.alsa.disable-batch = false # audio.format = "S16LE" # audio.rate = 48000 # audio.channels = 2 # audio.position = "FL,FR" # } #}
I just edited it as the comment suggests:
{ factory = adapter args = { factory.name = api.alsa.pcm.sink node.name = "alsa-sink" node.description = "Front Panel" media.class = "Audio/Sink" api.alsa.path = "front:CARD=PCH,DEV=0" api.alsa.period-size = 1024 api.alsa.headroom = 0 api.alsa.disable-mmap = false api.alsa.disable-batch = false audio.format = "S16LE" audio.rate = 48000 audio.channels = 2 audio.position = "FL,FR" } }
Then restarted pipewire*
and was able to use front panel jacks again. It
would be nice if it just listed the device from the start, but it’s not that
hard to do manually either.