Я запускаю Kubuntu 20.04 и пытаюсь использовать pulseaudio для смешивания реального микрофона (Blue Snowball) и виртуального микрофона, созданного с помощью pactl, например:
pactl load-module module-pipe-source source_name=virtmic \
file=/home/pyle/dev/virtmic format=s16le rate=16000 channels=1
Желаемый результат - иметь какое-то виртуальное записывающее устройство, которое принимает входные данные как с реального микрофона, так и с виртуального микрофонного устройства. Желательно также при воспроизведении любого звука, поступающего с виртуального микрофона на устройство вывода по умолчанию.
Я пробовал читать документацию и возился с раковинами, но мне кажется, что это не работает правильно. Я могу установить виртуальный микрофон в качестве записывающего устройства по умолчанию и направить на него звук, но это не позволит мне использовать реальный микрофон одновременно, и я также хотел бы слышать звук, передаваемый на виртуальный микрофон (но не звук с настоящего микрофона) воспроизводится с аудиовыходом по умолчанию.
Обновление 2021-02-03:
Спасибо за помощь @ChrisAga, кажется, что это все еще не совсем работает.
Я собрал все это так: #! / bin / bash
microphone="alsa_input.usb-Blue_Microphones_Blue_Snowball_2011BAA018H8-00.analog-stereo"
# Setup sink
pactl load-module module-null-sink \
sink_name=mix-for-virtual-mic \
sink_properties=device.description=Mix-for-Virtual-Microphone
# Real microphone to mix-for-virtual-mic
pactl load-module module-loopback \
source=$microphone \
sink=mix-for-virtual-mic latency_msec=20
# Virtual microphone device to pipe stuff to
pactl load-module module-pipe-source \
source_name=virtmic \
file=/home/pyle/dev/virtmic format=s16le rate=16000 channels=1
pactl load-module module-combine-sink \
sink_name=virtual-microphone-and-speakers \
slaves=mix-for-virtual-mic,@DEFAULT_SINK@
pactl load-module module-remap-source \
master=mix-for-virtual-mic.monitor \
source_properties=device.description=mixed-mic
После запуска этого и запуска pavucontrol-qt для проверки моих входов и выходов у меня есть два новых пункта в разделе «Запись», Loopback для микширования для виртуального микрофона из аналогового стерео Blue Snowball
и Переназначенный поток от монитора микса для виртуального микрофона
. Оба, похоже, реагируют только на фактический аудиовход, а не на звук, передаваемый на устройство виртуального микрофона.
В разделе «Устройства вывода» у меня также есть два новых устройства, Mix-for-Virtual-Microphone
и Одновременный вывод на Mix-for-Virtual-Microphone, аудиоконтроллер Starship / Matisse HD (X570) -A PRO материнская плата) Аналоговый стерео
. Первый, похоже, выводит только реальный звук с микрофона.
У меня также есть несколько новых устройств ввода, но выделяется то, что когда я передаю звук на virtmic
, он, кажется, вызывает реакцию только на Unix FIFO source / home / pyle / dev. / virtmic
, в то время как реальный звук с микрофона отображается на Blue Snowball Analog Stereo
, смешанном микрофоне
и мониторе Mix-for-Virtual-Microphone
.
Я пробовал поиграть с настройками в разделе «Запись» и с моим устройством вывода по умолчанию в настройках громкости плазмы, но никакая комбинация настроек, которые я пробовал, похоже, не работает, хотя я заметил, что если я изменяю только настройку по умолчанию устройство вывода, затем, когда я снова переключаюсь на Наушники
, я слышу свой микрофон (но не передаваемый звук).
Я что-то здесь пропустил?