[alsa-devel] Front speakers doesn't work in multichannel output, regression in ALC888

Raymond Yau superquad.vortex2 at gmail.com
Sun May 3 09:53:47 CEST 2015


> > > My problem is that when I set channel output to "Analog output
surround
> > > 5.1"
> > > (or 2.1 or 4.1), I hear no sound in front speakers, but in case of
5.1 or
> > > 4.1

You need pulseaudio lfe-filter for 2.1

http://cgit.freedesktop.org/pulseaudio/pulseaudio/log/?qt=grep&q=lfe-filter

do you mean surround21 need 6 channel instead of channels with 5.1 internal
/external speaker ?

http://git.alsa-project.org/?p=alsa-lib.git;a=commitdiff;h=48f1b308cc66152eb6db66742dd0d08d888cda8d;hp=5c4cd46810cef8850b037fca9e38ffd43b0bff22


> > > I can hear sound in rear speakers. I use kernel 3.19.5 and it didn't
> > > happen in
> > > earlier kernels that is 3.18 and in 3.17 for sure.
> > >
> > > My configuration is:
> > > OS: Fedora 21 64 bit
> > > SoundCard: ALC888
> > > Model name: acer-aspire-4930g
> > > Laptop: Acer Aspire 5930g
> > > Speakers: external 5.1 with 3 jacks
> > > Sound channel configuration module is standard configuration module
from
> > > KDE.
> > >
> > > Additional info:
> > > 1) When channel output is 5.1 and I unplug green jack and leave two
others
> > > jacks connected then I can hear sound in laptop internal speakers.

auto mute only check headphone jack or line out jack but not those retasked
mio jacks


> > > 2) Earlier (kernel 3.18 and 3.17) I didn't have possibility to choose
2.1
> > > configuration and additionally to 4.1 configuration I could also
choose
> > > 4.0
> > > configuration.
> > >
> > > You need to switch "Channel mode" to "6 ch" if you need to use
external
> >
> > 5.1 speakers since you have 5.1 internal speakers
> >
> > this change pin-ctl of headphone jack, mic jack and line in to OUT
> >
> > post the output of alsa-info.sh
>
> I always switched to "6 ch" through alsamixer. It always worked as
expected,
> but recently I've got problems with it so it regressed somewhere.

>
>
> My alsa-info.sh with "6 ch" set through alsamixer and "Analog output
surround
> 5.1 + Analog input stereo" set through KDE configuration module.
> http://www.alsa-project.org/db/?f=ff3f5a1f7f3e4662c3fa9bcf0158474a076b4cc4
>
> With that I hear all channels except front left and front right.

autoconfig for ALC888: line_outs=3 (0x14/0x17/0x16/0x0/0x0) type:speaker
   speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
   hp_outs=1 (0x15/0x0/0x0/0x0/0x0)
   mono: mono_out=0x0
   dig-out=0x1e/0x0
   inputs:
     Mic=0x18
     Internal Mic=0x12
     Line=0x1a


==> Best config: lo_type=2, wired=1, mio=1
multi_outs = 15/0/0/0 : 2/3/4/0 (type HP)
  out path: depth=3 '02:0c:15'
multi_ios(2) = 1a/18 : 3/4
  mio path: depth=3 '03:0d:1a'
  mio path: depth=3 '04:0e:18'
spk_outs = 14/17/16/0 : 5/25/4/0
  spk path: depth=3 '05:0f:14'
  spk path: depth=3 '25:26:17'
  spk path: depth=3 '04:0e:16'

Node 0x15 [Pin Complex] wcaps 0x40058f: Stereo Amp-In Amp-Out
  Control: name="Headphone Playback Switch", index=0, device=0
    ControlAmp: chs=3, dir=Out, idx=0, ofs=0
  Control: name="Front Headphone Jack", index=0, device=0
  Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-In vals:  [0x00 0x00]
  Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-Out vals:  [0x80 0x80]
  Pincap 0x0001003e: IN OUT HP EAPD Detect Trigger
  EAPD 0x2: EAPD
  Pin Default 0x0221101f: [Jack] HP Out at Ext Front
    Conn = 1/8, Color = Black
    DefAssociation = 0x1, Sequence = 0xf
  Pin-ctls: 0xc0: OUT HP
  Unsolicited: tag=01, enabled=1
  Power states:  D0 D1 D2 D3 EPSS
  Power: setting=D0, actual=D0
  Connection: 5
     0x0c* 0x0d 0x0e 0x0f 0x26

it is still headphone jack with pin-ctl : 0xc0 OUT HP while mic jack and
line in jack 's pin ctl are changed to 0x40 OUT

channel mode only change two mio jacks from IN to OUT

May need to use add_out_jack_mode=1 instead of add_jack_modes=1 when there
are Mic and line in jacks

Use Headphone Jack Mode control to switch HP to Line Out for pin-ctl and
EAPD

https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/commit/?id=f811c3cf8fae63ecc8a937ba7376490e2565f8f1

> To exclude that my speakers are broken or wrong connected: I get sound
from
> front left and front right if i switch in KDE configuration module to
"Analog
> duplex stereo", but then I get no sound from rest of my speakers.

http://cgit.freedesktop.org/pulseaudio/pulseaudio/tree/src/modules/alsa/mixer/paths/analog-output-headphones.conf

pulseaudio mute external center/lfe controls when headphone jack is plugged
since pulseaudio not aware that the role of headphone has been changed


[Element Center]
switch = off
volume = off

[Element LFE]
switch = off
volume = off


>
>
> KDE configuration module lets me choose "connector" configuration but
only in
> stereo mode.
> In stereo mode I can choose between "headphones" and "speakers".
> If it is set to "headphones" I hear sound in front left and front right
> speakers.
> If it is set to "speakers" I hear sound in rear left and rear right
speakers.
>

you need to switch "channel mode" to "2 ch" if you want to use your 5.1
internal speaker


https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/commit/?id=786c51f9168cfd2d49250c6e5e60035cbb2fd5a1


There are difference between static model and generic parser


More information about the Alsa-devel mailing list