Запретить pulseaudio менять настрйоки alsa (Как?)

Обсудить вопросы и проблемы со звуком

Модератор: aim

Аватара пользователя
AlexYeCu
Сообщения: 1109
ОС: fedora

Запретить pulseaudio менять настрйоки alsa

Сообщение AlexYeCu »

Система только с alsa, открываем alsamixer, настраиваем как надо.
Запускаем pulseaudio — настройки alsamixer меняются.
Как можно этой ситуации избежать? Каждый раз делать alsactl restore после вырубания pulseaudio напрягает.
Спасибо сказали:

Аватара пользователя
Hephaestus
Сообщения: 2771
Статус: Многоуважаемый джинн...
ОС: Slackware64-14.1/14.2

Re: Запретить pulseaudio менять настрйоки alsa

Сообщение Hephaestus »

AlexYeCu писал:
06.01.2020 23:09
Как можно этой ситуации избежать?
Вполне возможно, что никак. Я в слаке столкнулся с тем, что pulseaudio
каждый раз при старте вырубает наушники: ставит уровень громкости 0 и состояние канала в mute.
alsactl restore иногда помогало в этой ситуации, но чаще всего нет.
В результате никогда не знаешь, в каком состоянии канал наушников, приходилось регулярно заглядывать в настройки. Поиски нормального решения успехом не увенчались.
Где-то в Сети попадалось обсуждение, там говорили, что это поведение запилено где-то на уровне исходного кода пульсы. То есть через настройки это не рулится в принципе. Но это частная проблема именно с каналом наушников.
Как регулируется поведение пульсы в более общем случае - я судить не берусь.

А в моем случае, с учетом некоторых других недостатков, возникших с появлением пульсы, было принято решение выпилить её к чертям. Что я в итоге и сделал.
AlexYeCu писал:
06.01.2020 23:09
Каждый раз делать alsactl restore после вырубания pulseaudio напрягает.
Сколько раз происходит старт/стоп пульсы в процессе работы?
Свяжите старт с включением машины и стоп, соответственно, с выключением.
Тогда alsactl restore понадобится один раз - при включении системы после старта пульсы.

Если же пульса запускается вручную время от времени, то здесь, боюсь, ничего не поделаешь.
Пускай скрипят мои конечности.
Я - повелитель бесконечности...
Мой блог
Спасибо сказали:

Аватара пользователя
AlexYeCu
Сообщения: 1109
ОС: fedora

Re: Запретить pulseaudio менять настрйоки alsa

Сообщение AlexYeCu »

alsactl restore иногда помогало в этой ситуации, но чаще всего нет
Угу, PA переписывает

Код: Выделить всё

/var/lib/alsa/asound.state
, похоже. Приходится хранить настройки в

Код: Выделить всё

/var/lib/alsa/asound.state.back
, ну и соотв. восстанавливать как

Код: Выделить всё

alsactl restore -f /var/lib/alsa/asound.state.back
И почему это пользователи так не любят pulseaudio? Ретрограды, наверное…
Сколько раз происходит старт/стоп пульсы в процессе работы?
Вручную: надо запустить особенно криво написанную игрушку из Steam — приходится запускать. Надобность пропала — отрубаю.
Спасибо сказали:

Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8253
Статус: Маньяк
ОС: Arch, CentOS, Ubuntu

Re: Запретить pulseaudio менять настрйоки alsa

Сообщение serzh-z »

В PulseAudio есть модуль, который сохраняет и восстанавливает уровни (должен сохранять, но по своему опыту знаю, что он это делает криво - разработка давно заброшена). Можно запретить его загрузку.
Добавлено (20:09):
AlexYeCu писал:
07.01.2020 19:52
И почему это пользователи так не любят pulseaudio?
Потому что не хотят изучать новое и пытаются использовать PulseAudio с налета и без чтения документации, как обезьяны с гранатой. :)
Спасибо сказали:

Аватара пользователя
ormorph
Сообщения: 993
ОС: Gentoo

Re: Запретить pulseaudio менять настрйоки alsa

Сообщение ormorph »

Pulseaudio сохраняет настройки звука, по этому звук нужно выставлять не через alsamixer, а через pavucontrol, как то так видюшка.
Можно еще через pactl выставлять, но это нужно читать документацию как это делать.
Спасибо сказали:

Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8253
Статус: Маньяк
ОС: Arch, CentOS, Ubuntu

Re: Запретить pulseaudio менять настрйоки alsa

Сообщение serzh-z »

Модуль, который восстанавливает громкость и состояние: module-device-restore. Если хочется использовать вместо него alsamixer, то отключить загрузку module-device-restore можно в /etc/pulse/default.pa или же можно его выгрузить (unload-module) в ~/.config/pulse/default.pa. Также при загрузке модуля можно передать ему параметры restore_volume=0 или restore_muted=0, тогда он не должен конфликтовать с посторонними средствами.
Спасибо сказали: