Как включить “монитор на аудиоустройстве” (=виртуальный микрофон) в 24.04 с помощью pipewire

Вопрос или проблема

С помощью PulseAudio (управление PulseAudio) вы можете включить “монитор” на аудиоустройстве, который затем будет действовать как виртуальный микрофон, записывающий то, что воспроизводится на громкоговорителе.

Как лучше всего сделать это с текущей системой PipeWire в ((k)ubuntu 24.04)? Если это невозможно сделать через конфигурацию, нужно ли заменять всю звуковую систему или только часть (или есть ли какой-то пакет)?

(Я не хотел заменять всю звуковую систему только потому, что не мог найти нужную конфигурацию (гугл (не) помогает, предлагая “настроить мониторный звук” – то есть настроить громкоговорители, встроенные в дисплеи…), а установка PulseAudio параллельно с PipeWire кажется плохой идеей.)

Ответ или решение

Для того чтобы включить возможность мониторинга аудиоустройства (виртуального микрофона) в системе на основе PipeWire в (K)Ubuntu 24.04, вы можете воспользоваться следующими шагами:

Установка необходимых пакетов

Убедитесь, что у вас установлены все необходимые компоненты PipeWire. Вы можете установить их с помощью команды:

sudo apt install pipewire pipewire-audio-client-libraries pipewire-pulse

Настройка PipeWire

  1. Проверка конфигурации
    Убедитесь, что PipeWire использует PulseAudio как интерфейс. Это можно проверить, выполнив команду:

    pactl info

    Если вы видите строчку, упоминающую PipeWire, то всё настроено корректно.

  2. Создание виртуального устройства мониторинга
    PipeWire позволяет создавать виртуальные источники и устройства. Вам нужно создать и зарегистрировать виртуальное устройство мониторинга. Это можно сделать с помощью конфигурационного файла PipeWire.

  3. Редактирование конфигурации
    Откройте конфигурационный файл PipeWire, например, /etc/pipewire/pipewire.conf или ~/.config/pipewire/pipewire.conf (если он не существует, создайте его). Добавьте следующий блок конфигурации для активации мониторинга:

    context.modules = [
       {   name = libpipewire-module-portal
           args = {
               # Определяем, что мы хотим включить мониторинг.
               media.role = "Monitor"
           }
       }
    ]
  4. Создание виртуального микрофона
    Вам также необходимо создать виртуальное устройство мониторинга для использования в качестве микрофона. Это можно сделать, добавив следующую строчку в конфигурацию PipeWire:

    context.modules = [
       {   name = libpipewire-module-virtual-source
           args = {
               # Опция определения источника звука
               format = "S16LE"  # форматы могут варьироваться
               rate = 44100
               channels = 2
           }
       }
    ]
  5. Перезагрузка PipeWire
    После внесения изменений в конфигурационный файл, вам необходимо перезапустить PipeWire для применения изменений. Это можно сделать, выполнив команды:

    systemctl --user stop pipewire
    systemctl --user start pipewire

    Или перезагрузите свою систему, чтобы изменения вступили в силу.

Проверка работы виртуального микрофона

Для проверки работы виртуального микрофона можно использовать такие инструменты, как pavucontrol (PulseAudio Volume Control) или qpwgraph, чтобы увидеть, отображается ли ваше новое устройство и правильно ли оно работает.

Замечания

  • Убедитесь, что у вас нет конфликтующих настроек между PipeWire и другими аудиосистемами, такими как PulseAudio. Лучше всего использовать PipeWire в качестве основной системы.
  • В некоторых случаях может потребоваться дополнительно настроить разрешения для доступа к новому виртуальному устройству.

Следуя данным инструкциям, вы сможете настроить мониторинг аудиоустройств в PipeWire и воспроизвести аналогичную функциональность, которую раньше обеспечивал PulseAudio.

Оцените материал
Добавить комментарий

Капча загружается...