Как я могу создать виртуальный вывод в PulseAudio?

С awk:

awk '/Delete Successful/ && last_line ~ /Prepare to remove role/ {n++}
     {last_line=$0}
     END {print n+0}'
7
15.12.2014, 20:47
5 ответов

Проходите через Lib / Quoteg.c В исходном источнике Cereutils показывает, что цитата зависит от вашей Locale . В моем Minux Mint 17 ( EN_GB.UTF-8 ) У меня есть влево, так и правильная цитата то же самое ( ), тогда как система с en_us.utf-8 Поскольку локалий имеют обратную ответственность перед (слева) именем файла.

Эта статья имеет какой-то фон

-121--139833-
sudo modprobe snd_aloop

Добавляет устройство обратной связи в ALSA, которое отображается в регуляторе объема PULSAUDIO. Перенаправьте свой поток там и Presto!

Не уверены, как добавить несколько устройств обратной связи.

8
27.01.2020, 20:14

Вы можете добавить приемник с помощью

pacmd load-module module-null-sink sink_name=MySink
pacmd update-sink-proplist MySink device.description=MySink

Вы можете добавить устройство обратной связи с помощью команды

pacmd load-module module-loopback sink=MySink
9
27.01.2020, 20:14

Небольшое дополнение к ответу @mxc, поскольку он сказал, что вы можете использовать модуль -null -как виртуальный выход с:

    pacmd load-module module-null-sink sink_name=MySink

Это создает новый приемник ("виртуальный вывод" ), который вы можете использовать для своего приложения. Для каждого созданного вами приемника pulseaudio также создаст источник монитора, поэтому в дополнение к вашему устройству вывода MySink у вас будет устройство ввода MySink.monitor, которое вы можете использовать для захвата того, что отправляется на ваш виртуальный выход.

Таким образом, можно легко захватывать, повторно транслировать или записывать звук, выводимый приложением.

Это чистое решение Pulseaudio, для него не требуется Alsa, поэтому оно также будет работать с серверной частью, отличной от Alsa для Pulseaudio.

8
27.01.2020, 20:14

Мне никогда не удавалось заставить snd_aloopработать на моих системах. Кроме того, использование ffmpeg -f pulse -i alsa_output.pci-0000_00_1f.3.analog-stereo.monitor etc.приводило к задержке в 1 -2 секунды в системной аудиозаписи. Ответ mxc помог мне найти решение, но я хотел добавить немного информации.

Сначала мне нужно было установить монитор пульса встроенного -в аудио по умолчанию. Затем я выполнил команды, перечисленные выше. Я хотел, чтобы это было по умолчанию в моем профиле каждый раз, поэтому я создал ~/.config/pulse/default.paи добавил следующие строки:

.include /etc/pulse/default.pa

set-default-source alsa_output.pci-0000_00_1f.3.analog-stereo.monitor
load-module module-null-sink sink_name=MySink
update-sink-proplist MySink device.description=MySink
load-module module-loopback sink=MySink

Первая строка содержит общесистемные -настройки PulseAudio. Затем последние четыре строки имеют приоритет для пользователя над любыми системными настройками. Конечно, любая из последних четырех строк может быть запущена в терминале, если перед ней стоит pacmd.

Чтобы узнать имя встроенного монитора пульса -в аудиоустройстве, запустите:

pacmd list-sources | awk '/index:/ {print $0}; /name:/ {print $0}; /device\.description/ {print $0}'

4
27.01.2020, 20:14

Помимо создания приемника, большинство приложений отфильтровывают источники мониторинга. Чтобы иметь возможность выбрать источник напрямую, например, в Google Meet, помогает модуль -remap -source.

# create sink
pactl load-module module-null-sink sink_name=virtmic \
    sink_properties=device.description=Virtual_Microphone_Sink
# remap the monitor to a new source
pactl load-module module-remap-source \
    master=virtmic.monitor source_name=virtmic \
    source_properties=device.description=Virtual_Microphone

(нашел это изhttps://aweirdimagination.net/2020/07/19/virtual-microphone-using-gstreamer-and-pulseaudio/)

Другой возможностью является создание файла ~/.config/pulse/default.paс содержанием:

.include /etc/pulse/default.pa

load-module module-null-sink sink_name=virtmic sink_properties=device.description=Virtual_Microphone_Sink
load-module module-remap-source master=virtmic.monitor source_name=virtmic source_properties=device.description=Virtual_Microphone

запустить pulseaudio -kдля перезагрузки конфигурации

Вы можете использовать pavucontrolдля маршрутизации звука из любого приложения (, например Spotify ), на виртуальный приемник микрофона.

4
25.02.2021, 17:02

Теги

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