KMix. Смена звуковой карты.

Как заставить KMix переключаться между звуковыми картами?
Обе звуковые карты рабочие: меняя индексы в alsa.conf, после перезагрузки звучит та, которая с индексом 0.

Kmix показывает то что может

Kmix показывает то что может alsa. KDE поддерживает свой собственный фреймворк phonon, в котором можно выбирать какая карточка для каких целей должна использоваться (настраивается это всё в Системных параметрах).

А реально сделать, чтобы весь

А реально сделать, чтобы весь звук выводился на одну карту и чтобы можно было выбирать на какую?

- - -

PulseAudio + pavucontrol

спасибо, все сделал. вот

спасибо, все сделал.

вот только еще один вопрос. PulseAudio для каждого потока запоминает, куда я его направил в предыдущий раз, и по умолчанию направляет туда же. Так вот, где хранится эта информация и поддается ли она редактированию?

- - -

Самого интересует этот вопрос - как изменять запомненные Volume и Sink у клиентов, если клиенты выключены. Если найдете - дайте знать.

Чисто теоретическое предложение:
Если для Вас это крайне критично, можно попробовать сделать грязный хак - создать виртуальное устройство и повесить всех клиентов на него, а уже само виртуальное устройство переключать на реальные карты (или удаленные) в зависимости от ситуации. Для этого могут подойти модули: module-combine или module-remap-sink
http://pulseaudio.org/wiki/Modules#module-combine
Управление модулями через утилиты pactl, или pacmd.
Неизвестно только - как это отразится на задержках и производительности?..

P.S.
Вместо Kmix (до тех пор пока его не допилят) удобнее использовать gnome-volume-control-applet - не смущайтесь, что оно gnome - главное оно удобно и работает. Или, можете попробовать veromix - если заработает.
При использовании PA, регулировать громкость средствами alsa уже нельзя - иначе, собьются запомненные состояния клиентов.
Если активно пользуетесь раздельной громкостью, то можете обратить внимание на опцию: "/etc/pulse/daemon.conf:flat-volumes = no" - в этом случае, громкость клиентов не абсолютная, а относительная мастер-громкости, что, IMHO, удобнее при большом количестве клиентов и стопроцентной мастер-громкости.

- - -

Догадался! Это же элементарно просто - через paplay.

- Смотрим имя клиента когда он работает:
pactl list | perl -ne 'if (/^Client/ .. /application.name = (.+)/) { print "$1\n" if $1; }' | less
- И прикидываясь этим клиентом меняем громкость и Sink (например MPlayer) без запуска самого клиента:
paplay --client-name=MPlayer --device=1 --volume=10000 /usr/share/sounds/alsa/Noise.wav

Регистр имеет занчение.

оо, крутой способ, спасибо.

оо, крутой способ, спасибо.

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

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