Pulseaudio, интегрированная карта и два устройства воспроизведения. [Решено]

Доброго времени суток.
Можно ли сконфигурировать PA на работу с двумя устройствами воспроизведения (аля колонки + наушники) подключенные к одной аудиокарте таким образом чтобы звуковой поток из приложений можно было переключать между ними?
Звуковая карта интергрированная:

# lspci -k|grep audio -A 3
00:1f.5 Multimedia audio controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller (rev 02)
	Subsystem: ASRock Incorporation Device 9739
	Kernel driver in use: Intel ICH
	Kernel modules: snd-intel8x0

Звуковая имеет три гнезда, конфигурации которые поддерживает:
1. Stereo, 2 ch + Line-in, 2 ch + microphone;
2. Stereo, 4 ch + microphone;
3. Stereo, 5+1 ch.
Как, в принципе, и любая другая карточка на три гнезда.
А мне же надо что-то вроде Stereo, 2 ch + Stereo, 2 ch + microphone.
Основная задача в переключении основного устройства воспроизведения, использовать одновременно наушники и колонки пока не планирую (но буду не против, если такое возможно :) ).

Вряд ли такое возможно

По-моему, в текущей реализации pulseaudio работает только с имеющимися в системе раздельными hw устройствами (hw0,0; hw0,1 и т.п).
Если альсовский модуль под Вашу звуковую карту выделяет выход наушников в отдельное устройство - тогда все легко настроить. Однако же, скорей всего - этого нет и управление выводом звука на наушники или динамики организовано другим образом (о чем pulseaudio ничего не известно).
Варианты решения:
1. Некоторые карты при втыкании наушников сами умеют отключать выход на динамики (возможно для этого нужны дополнительные опции модуля - гляньте modinfo snd-intel8x0)
2. Можно приобрести копеечную PCI-звуковую, воткнуть ее и развести через pulseaudio все как Вам надо (во встроенной например - динамики, во внешней - наушники). Кстати в этом случае последние версии pulseaudio легко настраиваются на одновременный вывод звукового потока приложения в обе карты (simulteneous sink).

У себя использую именно второй вариант. В моем случае имеется дополнительный бонус при выводе звука на 5.1 систему через SB Audigy SE (модуль ca0106 которой писали, видимо, люди, ничего не знающие об аппаратном микшировании :( ).

Да пребудет с тобой великий Linux.

1. моя материнская плата (а

1. моя материнская плата (а вместе с ней и аудиокарта) доаольно древние, поэтому эту фичу она не умеет точно
2. Можно, но у меня пока в голове вертиться другой вариант: спаять переключатель, что более практично для меня, т.к. компьютера у меня два, и устройств воспроизведения тоже два, вот и сделаю с двумя переключателями на три положения. Но думал можно разрулить программно..
Интересно а разрабочики в этом (на счет выходов аудиоустройств) направлении что-то делают, или пока другим заняты?
А, то было бы люботно использовать такую схему.
p.s.: а как проверить видит ли система звуковую как одно устройства или как несколько?

нагуглилось вдруг...

NFS_Daemon написал(а):
p.s.: а как проверить видит ли система звуковую как одно устройства или как несколько?

aplay -l покажет все устройства проигрывания, arecord -l - все устройства записи.

Насчет переключателей: оно может и удобно кому-то, но это никак не linux-way ;)
А linux-way таки отыскался в гугле:

 load-module module-remap-sink sink_name=speakers remix=no master=alsa_output.pci-ХХХХХХХХХ channels=2 master_channel_map=front-left,front-right channel_map=front-left,front-right
 load-module module-remap-sink sink_name=headphones remix=no master=alsa_output.pci-ХХХХХХХХХ channels=2 master_channel_map=rear-left,rear-right   channel_map=front-left,front-right

Это прописывается в /etc/pulse/default.pa для Вашей карты (alsa_output.pci-ХХХХХХХХХ заменить на то, что выдает pacmd list-sinks - выбирайте что-то типа alsa_output.pci-ХХХХХХХХХХ.analog-surround-40, как наиболее соответствующее такой конфигурации).
По приведенному примеру подключать надо так:
1. Колонки - к выходу FRONT карты (устройство в pulseaudio будет называться speakers)
2. Наушники - к выходу REAR карты (устройство в pulseaudio будет называться headphones)
При такой схеме уже не удастся задействовать 5.1 выход без перетыкания штекеров/перезапуска pulseaudio с другим конфигом, но имхо Ваша программа-минимум выполняется.

PS и не надо никаких тумблеров :)

Да пребудет с тобой великий Linux.

Отличные новости! Спасибо,

Отличные новости! Спасибо, чесно говоря была такая идея (задействовать 4 ch, а потом их программно порезать на два выхода) но не знал как потом программам объяснить что rear - это отдельное устройство. Теперь знаю!
Вы сэкономили мне время на поездку к радиорынку :).

"План был хорош

"План был хорош внезапностью".
На практике наушники молчат.
Но задумка хорошая - через регулятор громкости перекидывать аудиопотоки на разные устройства (хоть и виртуальные, с точки зрения системы).

UPD:
походу line-in у меня не рабочий :(, потому и не слышно звука.

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".