Я пытаюсь выяснить, как выгрузить импульсно-звуковые выходы обратной связи. Я использую pulseaudio для создания петлевого микса, чтобы захватить микрофон и системный звук для потоковой передачи. Каждый раз, когда я запускаю свой скрипт, который имеет этот код:
pactl load-module module-null-sink sink_name=mix
pactl load-module module-loopback sink=mix
pactl load-module module-loopback sink=mix
avconv ...
pactl unload-module module-loopback
после закрытия он оставляет два устройства вывода. Команда unload-module избавляет от записи, но я не могу найти команду для выходов.
источник
MODULE_NUMBER=$(pacmd list-sinks | grep -E "^\s*name:|^\s*module:" | grep -A 1 -E "^\s*name: <MY-SINK-NAME>" | grep -oP "module: \K[0-9]+")
гдеMY-SINK-NAME
это то, что он говорит. Держите<
>
в коде!pactl list short modules | grep "sink_name=MY-SINK-NAME" | cut -f1 | xargs -L1 pactl unload-module
. Преимущество заключается в удалении ВСЕХ названных модулейMY-SINK-NAME
(имена приемников не являются уникальными).