Чтение вывода звуковой карты на Rasperrybi 3 с помощью программы C ++ - PullRequest
0 голосов
/ 04 июля 2019

Я публикую этот вопрос после многих исследований и множества неудачных экспериментов.

Это оказалось намного сложнее, чем я ожидал.

Что я хочу сделать:

Считать выходные данные системного выхода, блок за блоком перекрывается с размером блока 50%, синхронизированным образом. Например, если я играю видео на YouTube или файл WAV на моем Raspberry Pi, я хотел бы передать это в мою реализацию C ++.

Затем возьмите блоки и БПФ преобразуйте их, чтобы визуализировать спектр, используя набор из 55 светодиодных индикаторов.

Что я уже сделал: Я уже реализовал все, начиная с реализации FFT. Моя реализация работает, загружая сохраненный файл WAV отлично.

Проблема:

Однако, часть, где я пытаюсь прочитать вывод звуковой карты, является довольно сложной задачей.

В этот момент я разрываюсь между Jackaudio, ALSA или portaudio. Все они требуют реализации функции обратного вызова, с которой я не был знаком, но я вроде понял это. Я сталкиваюсь с ошибками, пытаясь запустить примеры функций ALSA и portaudio. Все еще не пробовал Джакаудио.

Мой вопрос:

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

Причина вопроса:

Из-за моего ограниченного опыта использования C ++ мне понадобится много времени, чтобы запустить одну из примеров функций. Таким образом, получение подсказки о том, какой пакет является надежным и способен предоставить то, что мне нужно, заставит меня почувствовать уверенность в том, что я куда-то иду.

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

Этот является аналогичным вопросом еще с 2015 года, когда кто-то предположил, что это невозможно сделать в ответах.

...