Список всех устройств ALSA

Я использую PulseAudio в своей системе, и я следовал инструкциям по добавлению устройства монитора в соответствии с PulseAudio вики. Само устройство мониторинга работает и должным образом регистрируется / функционирует в приложениях, таких как Audacity, но я не могу заставить устройство отображать себя через любой из инструментов командной строки. aplay -L возвращает примерно тот же список, что и Audacity, но удобно отсутствует устройство монитора.

Моя конечная цель - проанализировать вывод в приложении Java и в конечном итоге передать его в FFmpeg. Я могу сказать, что устройство существует через аудио API Java, так как отображаются 2 общих "порта источника захвата", но оно не предоставляет имя для устройства, и цель состоит в том, чтобы оно выбиралось пользователем в несколько дружелюбно.

Есть ли какие-либо способы заставить устройство монитора отображаться в приложении командной строки или через API / библиотеку Java?

Заранее спасибо!

3 ответа

Решение

Использовать pacmd list-sources или же pactl list команды для отображения устройств PulseAudio. Чтобы показать только имена, вы можете grep на его выходе. Это пример из FAQ по PulseAudio

$ LANG=C pactl list | grep -A2 'Source #' | grep 'Name: ' | cut -d" " -f2

С дополнительным grep на ".monitor" вы можете получить только устройства мониторинга.

Короче говоря, похоже, что проблема на уровне alsa, а не на уровне pulseaudio? Если вы хотите увидеть устройства alsa, попробуйте.

aplay -l

(но уже упомянутый aplay -L аналогичен).

PulseAudio находится поверх alsa. Итак, рассмотрение pactl открывает еще один уровень программного обеспечения... см. Здесь Troubleshooters.com/linux/sound/sound_troubleshooting.htm. Если alsa не видит звуковое устройство, то, конечно же, pulseaudio не будет?

Это предельно просто:

Это показывает вам приемники/выходные порты:

      aplay -L

Поскольку «монитор» является портом источника/входа, вам понадобится следующее:

      arecord -L

Обновление: aplay и arecord находятся в пакете alsa-utils. Установить:

      sudo apt install alsa-utils
Другие вопросы по тегам