[alsa-devel] [pulseaudio-discuss] What-did-you-plugin-dialog

Raymond Yau superquad.vortex2 at gmail.com
Tue Dec 3 04:07:12 CET 2013


>> >

> >> > can you try the patch which add "channel mode" control which allow you
> >> > to
> >> > switch from 6ch to 8ch
> >>
> >> I have tested the patch. In 8ch mode, it works without any overrides
> >> in the sense that the side channels go to the blue jack if I choose
> >> 8ch mode. In the 6ch mode, the line input also works (tested by using
> >> headphones as a very bad microphone-like source).
> >>
> >> Here is alsa-info in the 6ch mode:
> >>
> >>
> http://www.alsa-project.org/db/?f=d152698d4b2d9589d4c5f14e0c8e6d4978c8fbd0
> >>
> >> And in 8ch mode:
> >>
> >>
> http://www.alsa-project.org/db/?f=4d5d14fbb559819fd82e7731e656be7efcfab439
> >>
> >> Pulseaudio is not smart enough to decide by itself that it can toggle
> >> the control and add 7.1 profiles. If I toggle the control manually and
> >> restart pulseaudio, they appear.
> >>
> >> If the role of the "Line jack" control is still unclear, just say so
> >> and tell me what to do to figure it out.
> >>
>
> I will test everything later today, when I return home. However, I
> have questions about the tests.
>
> > In 8ch mode, do the "Line jack" return true when you plugged "Side
> Speaker"
> > ?
>
> Do I understand correctly that I need to look at "amixer -c1 contents"
> output?
>
> > Should changes in "channel mode" , "Headphone Mic jack mode" or "Mic Jack
> > Mode" trigger an event so that pulseaudio server probe the sound card
> again
> > ?
>
> How can I verify this? Is it enough to look at pulseaudio -vvv output?
>
>
if your computer chassis does not have front audio panel and you want to
use headphone with line out jacks the rear panel

just use early patching to  add hints

add_out_jack_modes=1

or

add the following line to patch_realtek.c

spec->gen.add_jack_modes = 1

this create "Line Out Jack Mode" control on those line out jacks and
"Headphone Jack Mode" on headphone jacks which pincap support OUT and HP,

your headphone plugged into Line Out jack still be regarded as Line Out
and use Front Playback Volume

http://cgit.freedesktop.org/pulseaudio/pulseaudio/commit/src/modules/alsa/mixer/profile-sets/default.conf?id=ecf3ab2b5788c85c237eeb6429bd1d525b9ac0cc

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

as add_out_jack_modes is depreciated , you will have "Front Mic Jack Mode"
, "Rear Mic Jack Mode" and "Line Jack Mode" controls

The function of these kind of controls are to change the function of the
corresponding jacks

the function of the "channel mode" control have one more function in
addition to change the input jacks to surround output jacks ,is to change
playback mode from stereo to support multi-channels playback

however "channel mode" change to "8ch" does not imply "Line in" jack must
be retasked (e.g. both rear mic and line in are retaskable)


for those 3stack desktop Line In is retasked as output but for those 5
stack desktop , Line In is still input jacks when "channel mode" is "6ch"

the possible way is to check the pin ctls and vref of the node is match
with the name of the jack detection control, also the driver might set pin
ctl to zero to mute the output

Node 0x1a [Pin Complex] wcaps 0x40058f: Stereo Amp-In Amp-Out
  Control: name="Side Playback Switch", index=0, device=0
    ControlAmp: chs=3, dir=Out, idx=0, ofs=0
  Control: name="Line Boost Volume", index=0, device=0
    ControlAmp: chs=3, dir=In, idx=0, ofs=0
  Control: name="Line Jack", index=0, device=0
  Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
  Amp-In vals:  [0x03 0x03]
  Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
  Amp-Out vals:  [0x00 0x00]
  Pincap 0x00003736: IN OUT Detect Trigger
    Vref caps: HIZ 50 GRD 80 100
  Pin Default 0x0181305f: [Jack] Line In at Ext Rear
    Conn = 1/8, Color = Blue
    DefAssociation = 0x5, Sequence = 0xf
  Pin-ctls: 0x40: OUT VREF_HIZ
  Unsolicited: tag=04, enabled=1
  Power states:  D0 D1 D2 D3 EPSS
  Power: setting=D0, actual=D0
  Connection: 5
     0x0c 0x0d 0x0e 0x0f* 0x26


More information about the Alsa-devel mailing list