1

Pulseaudio apparently supports "jack detection", meaning auto-detection of whether anything is plugged into each jack (e.g., headphone jack, line out jack) or not.

Unfortunately, Pulseaudio's jack detection isn't working for me. How do I troubleshoot it? What steps should I follow to narrow down the cause of the problem?


I've found this guide from Ubuntu. It taught me to compare the output of amixer -c0 contents when something is plugged into the jack, vs when nothing is plugged in; and to do the same for pacmd list-cards.

In my case, I found that jack detection seems to be working at the ALSA / kernel level. amixer -c0 contents outputs the following when nothing is plugged in:

numid=41,iface=CARD,name='Line Out CLFE Jack'
  ; type=BOOLEAN,access=r-------,values=1
  : values=off

When something is plugged in, the last line changes to values=on. This seems to indicate that jack detection is working at the ALSA / kernel level.

However, jack detection doesn't seem to be working at the Pulseaudio level. The output from pacmd list-cards is the same whether something is plugged in or not. In particular, I see something like

    ports:
            ...
            analog-output-lineout: Line Out (priority 9900, latency offset 0 usec, available: no)
                    properties:
            ...

regardless of whether anything is plugged in or not. This makes me suspect that maybe Pulseaudio is at fault here.

What are the next steps to troubleshoot this?


If it's relevant, here is my information about my particular system. I am using Fedora 21. Here are some package version numbers: kernel-3.17.7-300.fc21.x86_64, pulseaudio-5.0-25.fc21.x86_64, alsa-plugins-pulseaudio-1.0.28-3.fc21.x86_64, alsa-lib-1.0.28-2.fc21.x86_64. Here's the sound controller that shows up in lspci -vvnn:

00:1b.0 Audio device [0403]: Intel Corporation 7 Series/C210 Series Chipset Family High Definition Audio Controller [8086:1e20] (rev 04)
    Subsystem: Biostar Microtech Int'l Corp Device [1565:8228]

Here are the first few lines from /proc/asound/card0/codec#2 (there is no codec#0 or coded#1 on my machine, though that would normally be the first place to check; codec#3 is for HDMI and doesn't seem relevant):

Codec: Realtek ALC892
Address: 2
AFG Function Id: 0x1 (unsol 1)
Vendor Id: 0x10ec0892
Subsystem Id: 0x15658228
Revision Id: 0x100302

That's information about my particular machine. But maybe a general answer that is generically applicable will be more useful to others.

1

Solved un-commenting this line on

/etc/pulse/default.pa

load-module module-switch-on-port-available

Manually it can be done

pacmd load-module module-switch-on-port-available

Tested on a netrunner 17 / ubuntu 15.10

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.