Решение проблем PulseAudio и PipeWire: различия между версиями
Строка 50: | Строка 50: | ||
Затем перезапустите PipeWire и проверьте список доступных устройств: | Затем перезапустите PipeWire и проверьте список доступных устройств: | ||
$systemctl --user --now enable pipewire-media-session.service | $ systemctl --user --now enable pipewire-media-session.service | ||
====Проверка доступных устройств==== | ====Проверка доступных устройств==== | ||
Строка 56: | Строка 56: | ||
<s>$ pw-record --list-targets</s> - list-targets [https://wiki.archlinux.org/title/PipeWire#Audio_2 был удален] в более новых версиях | <s>$ pw-record --list-targets</s> - list-targets [https://wiki.archlinux.org/title/PipeWire#Audio_2 был удален] в более новых версиях | ||
$ pw-link -iol | grep input | $ pw-link -iol | grep input | ||
===Звук не переключается автоматически при подключении нового устройства=== | |||
Чтобы автоматически переключаться на вновь подключенные устройства, раскомментируйте следующую строку (выделена жирным): | |||
{{path|/usr/share/pipewire/pipewire-pulse.conf}} (или добавьте в {{path|~/.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 | |||
==Источники== | ==Источники== |
Версия от 11:47, 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 ...
Если используется 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
Проверка доступных устройств
Для проверки доступных устройств ввода используйте команду:
$ pw-record --list-targets- list-targets был удален в более новых версиях $ pw-link -iol | grep input
Звук не переключается автоматически при подключении нового устройства
Чтобы автоматически переключаться на вновь подключенные устройства, раскомментируйте следующую строку (выделена жирным):
/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