Summary: | Ports(Jack Detection) state error | ||
---|---|---|---|
Product: | PulseAudio | Reporter: | Meng Zhuo <mengzhuo1203> |
Component: | modules | Assignee: | pulseaudio-bugs |
Status: | RESOLVED NOTOURBUG | QA Contact: | pulseaudio-bugs |
Severity: | normal | ||
Priority: | medium | CC: | diwic, lennart, poncho |
Version: | unspecified | ||
Hardware: | x86-64 (AMD64) | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: |
logs while headphone plugged
pulseaudio -vvvvv full log as asked |
Created attachment 67927 [details]
pulseaudio -vvvvv
D: [pulseaudio] alsa-mixer.c: Jack Headphone, alsa_name='Headphone Jack', detection unavailable D: [pulseaudio] alsa-mixer.c: Jack Front Headphone, alsa_name='Front Headphone Jack', detection unavailable -------------- meanwhile in amixer ------------- numid=23,iface=CARD,name='Headphone Jack',index=1 ; type=BOOLEAN,access=r-------,values=1 : values=on ------------- I think something broken during detection. It would be nice to have the full log of pulseaudio -vvv. The log that is attached doesn't start from the beginning, and doesn't contain the part where the jack is probed. Anyway, I think the most likely reason is that pa_alsa_find_jack() returns NULL in jack_probe(). This is the code: snd_hctl_elem_t* pa_alsa_find_jack(snd_hctl_t *hctl, const char* jack_name) { snd_ctl_elem_id_t *id; snd_ctl_elem_id_alloca(&id); snd_ctl_elem_id_clear(id); snd_ctl_elem_id_set_interface(id, SND_CTL_ELEM_IFACE_CARD); snd_ctl_elem_id_set_name(id, jack_name); return snd_hctl_find_elem(hctl, id); } So, if this function returns NULL, either the function is incorrect, or the bug is in alsa. I've added David to CC (I don't know if you already get all bug traffic anyway - if you do, tell me so and I won't do this again). Created attachment 68019 [details]
full log as asked
I had attached full log. I don't know C stuff, it just my wild guess while jack detection of Mic works fine, not the Headphones. P.S. I'm a newbie of bug tracking, what does "get all bug traffic" means? ------------- numid=23,iface=CARD,name='Headphone Jack',index=1 ; type=BOOLEAN,access=r-------,values=1 : values=on ------------- The problem is that 'Headphone Jack' has an index > 0. This is done by ALSA when there are two different headphone jacks and has no other way to distinguish them. If there is no other 'Headphone Jack', without an index, it's a bug in ALSA. Do you have a launchpad bug for this, or could you file one with "ubuntu-bug alsa-driver"? In Ubuntu Quantal (which I see you're running), alsa info will be collected automatically. @Tanu, no I don't get all bug email (maybe I should? :-) ), so thanks for cc:ing me. (In reply to comment #6) > ------------- > numid=23,iface=CARD,name='Headphone Jack',index=1 > ; type=BOOLEAN,access=r-------,values=1 > : values=on > ------------- > > The problem is that 'Headphone Jack' has an index > 0. This is done by ALSA > when there are two different headphone jacks and has no other way to > distinguish them. If there is no other 'Headphone Jack', without an index, > it's a bug in ALSA. > > Do you have a launchpad bug for this, or could you file one with "ubuntu-bug > alsa-driver"? In Ubuntu Quantal (which I see you're running), alsa info will > be collected automatically. I filed a bug report https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/1060729 Hope it helps |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.
Created attachment 63368 [details] logs while headphone plugged My headphone port work fine while (un)plugged. But It appears that pacmd nor PulseAudio doesn't get the right signal from Alsa version state: <code> $ uname --a Linux x200s 3.4.0-999-generic #201205300405 SMP Wed May 30 08:06:16 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux </code> <code> $ pacmd --version pacmd 2.0 Compiled with libpulse 2.0.0 Linked with libpulse 2.0.0 </code> The logs of shell command "pacmd list-sinks" and "amixer" while my headphone plugged in the attachment. As you can see, amixer knows that headphone is plugged, meanwhile the state of pulseaudio is "unknown"