Настройка виртуального аудиокабеля для Linux

BETA UNTESTED

Осторожно выполняйте эту инструкцию, мы проверяли только частично!

Ссылка на оригинальный вопрос: askubuntu.com

Нужно настроить виртуальный кабель, который сможем запустить в Python. Вручную переназначать каждый раз через pavucontrol будет тяжко...

Самый простой способ — PulseAudio null sink

Убедитесь что стоит PulseAudio:

sudo apt-get install pulseaudio-utils

1. Создать виртуальный аудио кабель

# Создать виртуальное устройство
pactl load-module module-null-sink sink_name=virtual_cable sink_properties=device.description="Virtual_Cable"

# Monitor автоматически создаётся вместе с null sink!

2. Сделать постоянным (чтобы после перезагрузки оставалось)

Добавить в /etc/pulse/default.pa или ~/.config/pulse/default.pa:

load-module module-null-sink sink_name=virtual_cable sink_properties=device.description="Virtual_Cable"

3. Использование

В вашем коде:

В других приложениях (OBS, Discord, etc.):

Проверка что создалось

pactl list short sinks          # Покажет ваш virtual_cable
pactl list short sources        # Покажет Monitor of Virtual_Cable

В Python они появятся в sd.query_devices() как обычные устройства!

Итог: Один sink = один виртуальный кабель. Можете создать несколько (для FX отдельный, например).