Как добавить фильтр низких частот к профилю PulseAudio в масштабе всей системы?

Я хотел бы знать, как добавить фильтр звука низких частот к профилю PulseAudio в масштабе всей системы, чтобы позволить только частотам менее чем 18000 Гц моим динамикам.

1
задан 9 January 2017 в 15:28

1 ответ

Профили PulseAudio

Профиль PulseAudio по умолчанию в масштабе всей системы настроен в /etc/pulse/default.pa и переопределенный профилями в расчете на пользователя в ~/.pulse/default.pa если последний существует. Профили PulseAudio состоят из ряда команд, данных демону PulseAudio.

  • Для применения новой конфигурации, нужно перезапустить демона PulseAudio:

    pulseaudio --kill
    pulseaudio --start
    

    Если демон не запускает после изменения конфигурации можно выполнить PulseAudio un-daemonized, если Вы не учитываете --start опция и Вы можете выявить отладочную информацию с --log-level или один или несколько -v опции, например:

    pulseaudio --kill
    pulseaudio --log-level=info
    
  • Вместо того, чтобы перезапустить демона PulseAudio можно также изменить его конфигурацию и (не-) загрузочные модули посредством прямых команд через pactl или pacmd. Это часто легче, чем перезапуск демона все время для незначительных изменений.

Загрузка модуля

Для добавления модуля используют load-module команда. Можно найти PulseAudio-совместимый фильтр низких частот в хранилищах пакетов Ubuntu в форме плагина LADSPA lowpass_iir_1891 в пакете swh-plugins и доступный PulseAudio через module-ladspa-sink модуль. Полная команда похожа на это:

load-module module-ladspa-sink plugin=lowpass_iir_1891 label=lowpass_iir master=<MASTER_SINK> sink_name=<NAME> [control=<FILTER_PARAMETERS>] [channel_map=<CHANNEL_MAP>] [channels=<CHANNEL_COUNT>]

где <MASTER_SINK> название нисходящего "приемника", который получает аудиоданные от filter1 и <NAME> название приемника, который представляет модуль фильтра. <FILTER_PARAMETERS> используется для вещей как критическая частота и крутизна. Для других параметров и большего количества деталей посмотрите запись PulseAudio Wiki на модулях.

Установка приемника по умолчанию

Теперь, если Вы хотите, чтобы все приложения использовали приемник фильтра по умолчанию, необходимо сообщить PulseAudio как это:

set-default-sink <NAME>

где <NAME> совпадает с в предыдущем разделе.

PulseAudio хранит последний приемник каждого приложения с помощью него и может использовать это в пользу нового значения по умолчанию. Для сброса их удаляют ~/.pulse/*-stream-volumes.tdb. Можно также настроить приемник на поток с инструментами как pavucontrol (GUI) или pactl move-sink-input (командная строка).


1 можно перечислить все приемники с pactl list short sinks. Ваше фактическое имя приемника аудиоустройства будет обычно состоять из alsa_output, путь устройства и канал представляют имя, например, (в моей системе) alsa_output.pci-0000_00_1b.0.analog-stereo.

2
ответ дан 7 December 2019 в 13:38

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

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