Решение проблем PulseAudio и PipeWire: различия между версиями
Строка 28: | Строка 28: | ||
'''api.alsa.use-acp = false''' | '''api.alsa.use-acp = false''' | ||
... | ... | ||
=====Проверка доступных устройств===== | |||
Для проверки доступных устройств ввода используйте команду: | |||
<s>$ pw-record --list-targets</s> - list-targets [https://wiki.archlinux.org/title/PipeWire#Audio_2 был удален] в более новых версиях | |||
$ pw-link -iol | grep input | |||
====Если используется '''wireplumber'''==== | ====Если используется '''wireplumber'''==== | ||
Строка 52: | Строка 58: | ||
$ systemctl --user --now enable pipewire-media-session.service | $ systemctl --user --now enable pipewire-media-session.service | ||
====Проверка доступных устройств==== | =====Проверка доступных устройств===== | ||
Для проверки доступных устройств ввода используйте команду: | Для проверки доступных устройств ввода используйте команду: | ||
$ pwctl status | |||
===Звук не переключается автоматически при подключении нового устройства=== | ===Звук не переключается автоматически при подключении нового устройства=== |
Версия от 12:13, 22 сентября 2023
Решение проблем PulseAudio и PipeWire
PulseAudio
1
PipeWire
PipeWire не видит микрофон
Если у вас PipeWire не видит микрофон, попробуйте выключить в конфигурационном файле параметр api.alsa.use-acp и/или включить api.alsa.use-ucm.
Если используется pipewire-media-session
Откройте через текстовый редактор от рута /etc/pipewire/media-session.d/alsa-monitor.conf /usr/share/pipewire/media-session.d/alsa-monitor.conf
И приведите выделенные параметры к указанным значениям:
... rules = [ { ... actions = { update-props = { ... api.alsa.use-acp = false ...
Проверка доступных устройств
Для проверки доступных устройств ввода используйте команду:
$ pw-record --list-targets- list-targets был удален в более новых версиях $ pw-link -iol | grep input
Если используется wireplumber
Откройте через текстовый редактор от рута /etc/wireplumber/main.lua.d/50-alsa-config.lua (или ~/.config/wireplumber/main.lua.d/50-alsa-config.lua) /usr/share/wireplumber/main.lua.d/50-alsa-config.lua
... alsa_monitor.rules = { { ... apply_properties = { -- Использование устройств ALSA-Card-Profile. Они используют UCM или -- конфигурацию профиля для настройки параметров устройства и микшера. -- ["api.alsa.use-acp"] = true, -- Использование UCM вместо profile по возможности. Можно отключить, -- чтобы не пытаться использовать профиль UCM. ["api.alsa.use-ucm"] = true, ...
Затем перезапустите PipeWire и проверьте список доступных устройств:
$ systemctl --user --now enable pipewire-media-session.service
Проверка доступных устройств
Для проверки доступных устройств ввода используйте команду:
$ pwctl status
Звук не переключается автоматически при подключении нового устройства
Чтобы автоматически переключаться на вновь подключенные устройства, раскомментируйте следующую строку (выделена жирным):
/usr/share/pipewire/pipewire-pulse.conf (или добавьте в ~/.config/pipewire/pipewire.conf)
... context.exec = [ { path = "pactl" args = "load-module module-always-sink" } { path = "pactl" args = "load-module module-switch-on-connect" } #{ path = "/usr/bin/sh" args = "~/.config/pipewire/default.pw" } ] ...
Перезапустите пользовательские службы pipewire.service и pipewire-pulse.service для применения изменений.
$ systemctl --user restart pipewire.service pipewire-pulse.service