PipeWire (Русский)/Examples (Русский)

From ArchWiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Состояние перевода: На этой странице представлен перевод статьи PipeWire/Examples. Дата последней синхронизации: 2 августа 2021. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Объемный звук

Разделение на front/rear

Если PipeWire используется как замена PulseAudio или JACK, вы можете использовать этот способ разделения каналов. Используя его, можно одновременно использовать раздельные каналы для колонок и наушников.

Присоедините колонки к line-out выходу, а наушники к порту на задней панели. В pavucontrol переключите звуковую карту на использование как Analog Surround 4.0. Используйте следующие команды чтобы создать новые звуковые потоки для колонок и наушников, привяжите колонки к передним каналам, а наушники к задним:

 pactl load-module module-null-sink sink_name=speakers object.linger=1 media.class=Audio/Sink channel_map=FL,FR
 pactl load-module module-null-sink sink_name=headphones object.linger=1 media.class=Audio/Sink channel_map=RL,RR

Параметр object.linger=1 сохраняет каналы активными даже после отключения устройств. Так же вы можете использовать имя канала sink_name каким желаете нужным.

В случае, если вы хотите выгрузить модуль, используйте pw-cli destroy ID, где ID можно узнать командой pactl load-module. Выгрузка отдельных модулей через pactl unload-module на данный момент не поддерживается [1]. Но, можно выгруить все module-null-sink модули командой pactl unload-module module-null-sink.

Используя jack_connect, присоедините созданные каналы к портам звуковой карты. Найти нужные имена каналов можно командой jack_lsp -c.

 pw-jack jack_connect speakers:monitor_0  HDA\ ATI\ SB:playback_FL
 pw-jack jack_connect speakers:monitor_1  HDA\ ATI\ SB:playback_FR
 pw-jack jack_connect headphones:monitor_0  HDA\ ATI\ SB:playback_RL
 pw-jack jack_connect headphones:monitor_1  HDA\ ATI\ SB:playback_RR
Совет: Мы можете добавить вышеописанные команды в автозапуск. Также удостоверьтесь, что вместо HDA\ ATI\ SB стоит название вашей звуковой карты.
Примечание: Каналы созданные Jack/Pipewire время от времени меняют свое имя после перезагрузки. Например HDA\ ATI\ SB:playback_FL иногда становится Built-in\ Audio\ Analog\ Surround\ 4.0:playback_FL. Как временное решение, вы можете создать второй набор команд pw-jack и также добавить его в автозапуск.

Если вы хотите управлять громкостью каждого устройства по отдельности, используйте утилиты alsa (напр. amixer). Так же можете взять для примера скрипт, упрощающий процесс.