Pulseaudio не загружает настройки при запуске

У меня недавно возникла проблема с Pulseaudio, при каждой загрузке машины pulseaudio не загружает изменения, внесенные в файл default.pa и system.pa, я создал модуль remap-source для загрузки пользовательских настроек, потому что микрофонный вход моего ноутбука работает только на правом канале, поэтому мне пришлось его настроить. каждый раз, когда я переустанавливал свою ОС, я всегда это делал, и это работало, но не до недавнего времени.

вот вывод pacmd list-sources | grep name:

    name: <alsa_output.pci-0000_00_1f.3.analog-stereo.monitor>
    name: <alsa_input.pci-0000_00_1f.3.analog-stereo>

и вот изменения, которые я внес в default.pa

load-module module-remap-source master=alsa_input.pci-0000_00_1f.3.analog-stereo source_name=mono channels=1 channel_map=right

set-default-source mono

небольшой фрагмент вывода, который я нашел в journalctl

Sep 01 21:54:23 MIYUKI pulseaudio[1244]: Most likely this is a bug in the ALSA driver 'snd_hda_intel'. Please report this issue to the ALSA developers.
Sep 01 21:54:23 MIYUKI pulseaudio[1244]: We were woken up with POLLOUT set -- however a subsequent snd_pcm_avail() returned 0 or another value < min_avail.
Sep 01 21:55:23 MIYUKI pulseaudio[1244]: ICE default IO error handler doing an exit(), pid = 1244, errno = 11
Sep 01 21:55:23 MIYUKI systemd[1233]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
Sep 01 21:55:23 MIYUKI systemd[1233]: pulseaudio.service: Failed with result 'exit-code'.
Sep 01 21:55:23 MIYUKI systemd[1233]: pulseaudio.service: Failed to schedule restart job: Unit pulseaudio.socket is masked.
Sep 01 21:55:23 MIYUKI systemd[1233]: pulseaudio.service: Failed with result 'exit-code'.
Sep 01 21:55:50 MIYUKI pulseaudio[1201]: Master source not found.
Sep 01 21:55:50 MIYUKI pulseaudio[1201]: Failed to load module "module-remap-source" (argument: "master=alsa_input.pci-0000_00_1f.3.analog-stereo source_name=mono channels=1 channel_map=right"): initialization failed.
Sep 01 21:55:50 MIYUKI pulseaudio[1201]: Source mono does not exist.
Sep 01 21:55:50 MIYUKI pulseaudio[1201]: Failed to load module "module-alsa-card" (argument: "device_id="0" name="pci-0000_00_1f.3" card_name="alsa_card.pci-0000_00_1f.3" namereg_fail=false tsched=no fixed_latency_range=no ignore_dB=no deferred_volume=yes use_ucm=no avoid_resampling=no card_properties="module-udev-detect.discovered=1""): initialization failed.
Sep 01 21:55:54 MIYUKI pulseaudio[1201]: After module unload, module 'module-null-sink' was still loaded!
Sep 01 21:55:54 MIYUKI systemd[1171]: pulseaudio.service: Succeeded.
Sep 01 21:55:54 MIYUKI pulseaudio[1249]: Master source not found.
Sep 01 21:55:54 MIYUKI pulseaudio[1249]: Failed to load module "module-remap-source" (argument: "master=alsa_input.pci-0000_00_1f.3.analog-stereo source_name=mono channels=1 channel_map=right"): initialization failed.
Sep 01 21:55:56 MIYUKI plasma_session[1337]: org.kde.plasma.session: Starting autostart service  "/etc/xdg/autostart/pulseaudio.desktop" ("/usr/bin/start-pulseaudio-x11")
Sep 01 22:02:12 MIYUKI systemd[1238]: pulseaudio.service: Succeeded.

я уже пытался переместить настройки в другую папку, например ~/.config/pulse, снять маску и замаскировать процесс, но все равно не получилось. Единственное решение - добавить новую строку в мой скрипт входа (.zlogin или .zprofile):

pulseaudio --kill
pulseaudio --start

странно, но это работает после того, как я убил pulseaudio. но скрипт выполняется каждый раз, когда я вхожу в систему, а я не хочу, чтобы так было, это раздражает меня каждый раз, когда я запускаю новую сессию терминала (потому что скрипт также выполняется, когда я открываю сессию терминала, как в Android Studio или Visual Studio Code), и он продолжает показывать всплывающие окна. извините за мой плохой английский. Кто-нибудь знает, как это решить?

0
задан 2 September 2020 в 02:39

1 ответ

У меня была та же проблема, что и у вас. Я использую Ubuntu 20.04, и в моем случае изменения, которые я внес в default.pa, были следующими:

load-module module-echo-cancel source_name=noechosource sink_name=noechosink
set-default-source noechosource
set-default-sink noechosink

Кроме того, эти изменения также были включены в system.pa. Как и в вашем случае, каждый раз, когда я вхожу в систему, мне приходилось выполнять pulseaudio -k, чтобы заставить pulseaudio загрузить эти настройки. Чтобы решить эту проблему, я изменил ~/.profile и добавил следующие строки в конец файла:

chrome_open=$(pgrep chrome)
if [ -z "$chrome_open" ]
then
    pulseaudio -k
fi

Таким образом, каждый раз, когда я вхожу в систему, и если Chrome не открыт, эта команда казнен. Я использую этот оператор if, потому что, если Chorme открыт и выполняется pulseaudio -k, его необходимо перезагрузить. Я не знаю, лучшее ли это решение, но оно работает для меня, и я надеюсь, что этот ответ поможет кому-то вроде нас.

2
ответ дан 8 November 2020 в 10:45

Другие вопросы по тегам:

Похожие вопросы: