[alsa-devel] Headphone jack and auto-mute of speak output
Raymond Yau
superquad.vortex2 at gmail.com
Sat Oct 9 10:53:57 CEST 2010
2010/10/8 Davyd McColl <davydm at gmail.com>
> On 8 October 2010 01:05, Raymond Yau <superquad.vortex2 at gmail.com> wrote:
>
>> 2010/10/8 David Henningsson <david.henningsson at canonical.com>
>>
>> As you have not provided any output of alsa-info.sh , it is impossible to
>> say this case is a regression or not
>>
> Apologies. ALSA information can be found here:
> http://www.alsa-project.org/db/?f=e0b199a8e8de35452f761359e753f0f668bb9551
>
> In addition, the original bug I submitted can be found here:
> https://bugs.launchpad.net/bugs/655351
>
> There is a full hardware info dump as made by apport alongside that.
>
> If the driver cannot find the [Pin Complex] Speaker at Int when you select
>> model=auto.
>> it assume that it is a desktop instead of a laptop
>>
> The machine presenting the issue is indeed a desktop, not a laptop.
>
> -d
>
According to the output of alsa-infos.h, the motherboard seem has 6 audio
jacks and spdif out at the rear panel , green/pink jack at front panel
In theory the model should be 6stack-dig but hda-emu seem has several error
messages when using your codec-info.
The ALC888 series are high-performance 7.1+2 Channel High Definition Audio
Codecs providing ten DAC channels that simultaneously support 7.1 sound
playback, plus 2 channels of independent stereo sound output (multiple
streaming) through the front panel stereo outputs. The series integrates two
stereo ADCs that can support a stereo microphone
There are five volume controls and mute switches In the Block diagram (page
5 of alc888 datasheet) and the driver had created
The driver only implement stream_analog_alt_capture, but the 2 channels of
indpendent stereo has not been implemented if you look at the comment in
patch_realtek.c
Node 0x25 [Audio Output] wcaps 0x11: Stereo
Converter: stream=0, channel=0
PCM:
rates [0x560]: 44100 48000 96000 192000
bits [0xe]: 16 20 24
formats [0x1]: PCM
Node 0x26 [Audio Mixer] wcaps 0x20010f: Stereo Amp-In Amp-Out
Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-In vals: [0x00 0x00] [0x00 0x00]
Amp-Out caps: ofs=0x1f, nsteps=0x1f, stepsize=0x05, mute=0
Amp-Out vals: [0x00 0x00]
Connection: 2
0x25 0x0b
Headphones don't mute master sound is quite different from your previous
posts and David 's post
You expect all the 4 audio jacks in the rear panel should be muted when the
headphone is plugged in
>> This first appeared on my upgrade to 9.04
http://git.alsa-project.org/?p=alsa-kernel.git;a=commit;h=2134ea4f37d36addbe86d4901f6c67a22a5db006
since the virtual master volume control and playback switch is to allow
codecs that have no real hardware master volume registers
The virtual master playback switch of reatek codecs 's slave contains the
following switches
static const char *alc_slave_sws[] = {
"Front Playback Switch",
"Surround Playback Switch",
"Center Playback Switch",
"LFE Playback Switch",
"Side Playback Switch",
"Headphone Playback Switch",
"Speaker Playback Switch",
"Mono Playback Switch",
"iSpeaker Playback Switch",
NULL,
}
You should notice that the Left/Right balance control of Kmix was removed
because both left/right channels are increase/decrease at the same time when
you moved the volume slider of the virtual master volume control
Your problem can be solved if someone implement stream_analog_alt_playback
for the headphone so that you can use the new playback device to play audio
to the headphone only
/* FIXME: setup DAC5 */
/*spec->stream_analog_alt_playback = &alc880_pcm_analog_alt_playback;*/
This feature is not new , the alt playback device is /dev/adsp in the oss
driver ,
PA will has two sinks for the internal audio , you just switch the profile
to the independent headphone profile or use the sound preference to switch
the audio stream from analog-output sink to independent headphone sink
More information about the Alsa-devel
mailing list