[pulseaudio-discuss] Splitting ALSA card ports into

S0lll0s S0lll0s at blinkenshell.org
Sun Apr 3 13:18:32 UTC 2016


On 03.04.2016 14:46, S0lll0s wrote:
>>> > Hello everyone,
>>> > I am trying to get simultaneous output on the Line Out and 
>>> Headphones
>>> > outputs of my Intel HD Audio (AsRock Z97 motherboard) chipset and 
>>> PC
>>> > case. With the default pulseaudio configuration in pavucontrol I 
>>> can
>>> > choose Analog Stereo Duplex and then select either the "Line Out" 
>>> or
>>> > "Headphones" port under "Output Devices", but I would like to 
>>> have
>>> > simultaneous output on both (by having a seperate sink for each).
>>> >
>>> > Here is my alsa-info.sh output, please ignore the NVidia output
>>> > provided by my GPU as I would like to not use it if possible:
>>> >
>> 
>> http://www.alsa-project.org/db/?f=b7e5097f7a899aa5294b147b23cbb877db3b6f3c
>>> > And this is what "pacmd list-sinks" says about the Built-In audio 
>>> sink:
>>> > http://hastebin.com/bonadehimu
>>>
>>> It's not possible to have independent line out and headphone output 
>>> on
>>> your hardware. There is only one analog device on your card.
>>>
>>> --
>>
>> The easy way to output same audio to both output is disable drivers 
>> auto
>> mute mode and change pulseaudio conf files
>>
>> Simple mixer control 'Auto-Mute Mode',0
>> Capabilities: enum
>> Items: 'Disabled' 'Enabled'
>> Item0: 'Enabled'
>>
>> 
>> http://www.intel.com/content/www/us/en/support/boards-and-kits/desktop-boards/000007156.html
>>
>> 
>> https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/tree/Documentation/sound/alsa/HD-Audio.txt
>>
>> You have to ask Tiwai to enable independent hp for your realtek 
>> codec on
>> desktop ( e.g. no internal mic and hda controller
>> support enough SDO)
>>
>> You can specify hint indep_hp=1 by early patching,  the driver
>> automatically disable automute when you switch on independent hp 
>> switch
>>
>> 
>> https://git.kernel.org/cgit/linux/kernel/git/tiwai/sound.git/tree/Documentation/sound/alsa/HD-Audio-Controls.txt
>>
>> Independent HP When this enum control is enabled, the headphone 
>> output is
>> routed from an individual stream (the third PCM such as hw:0,2) 
>> instead of
>> the primary stream
>
> Okay, so following your advice I set up modprobe.d to specify the
> early-patching files:
>
> $ cat /etc/modprobe.d/snd_hda_intel.conf
> options snd_hda_intel patch=onboard-patch,hdmi-patch
>
> and specified the hint in /lib/firmware/onboard-patch:
>
> $ cat /lib/firmware/onboard-patch
> [codec]
> 0x10ec0892 0x1849d892 0
>
> [hint]
> indep_hp = 1
>
> this seems to work fine, I can query the card hints and indep_hp 
> shows up:
>
> $ cat /sys/class/sound/hwC0D0/hints
> indep_hp = 1
>
> but pulseaudio still only shows one sink. Do I need to manually load
> another sink module?

also, my alsa-info after now: 
http://www.alsa-project.org/db/?f=f7de54b96d1cb50391d638e3bc687730daf17a2f

so there now is a new "Alt-Analog" playback device:

before:

!!Aplay/Arecord output
!!--------------------

APLAY

**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC892 Analog [ALC892 Analog]
   Subdevices: 1/1
   Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 1: ALC892 Digital [ALC892 Digital]
   Subdevices: 1/1
   Subdevice #0: subdevice #0

ARECORD

**** List of CAPTURE Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC892 Analog [ALC892 Analog]
   Subdevices: 1/1
   Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 2: ALC892 Alt Analog [ALC892 Alt 
Analog]
   Subdevices: 1/1
   Subdevice #0: subdevice #0

now:

APLAY

**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC892 Analog [ALC892 Analog]
   Subdevices: 1/1
   Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 1: ALC892 Digital [ALC892 Digital]
   Subdevices: 1/1
   Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 2: ALC892 Alt Analog [ALC892 Alt 
Analog]
   Subdevices: 1/1
   Subdevice #0: subdevice #0

ARECORD

**** List of CAPTURE Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC892 Analog [ALC892 Analog]
   Subdevices: 1/1
   Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 2: ALC892 Alt Analog [ALC892 Alt 
Analog]
   Subdevices: 1/1
   Subdevice #0: subdevice #0


So I tried adding a second module-alsa-card:

$ pacmd load-module module-alsa-sink 
card_name=alsa_card.pci-0000_00_1b.2
Module load failed

(changed the .0 to .2 because thats the Alt Analog right?)


More information about the pulseaudio-discuss mailing list