Как читать / записывать необработанные аудиоданные в реальном времени (с питоном)? - PullRequest
5 голосов
/ 06 февраля 2012

Я хотел бы иметь возможность динамически читать и записывать аудиоданные в режиме реального времени.Я заметил python "audioscope" , который открывает файл unix / linux /dev/dsp и считывает из него необработанные байты.

Однако я использую Mac OSX 10.5.8 и двойнойзагрузка linux довольно сложна (я пытался.) Мне было интересно, существует ли какой-то конкретный «стандартный» модуль python, который может читать и записывать аудиоданные (возможно, хранить моментальные снимки данных в виде массивов.) Я планирую иметь возможность чтения в потоке./ store data, а другой поток отвечает отправкой новых сигналов.

На данный момент я хочу использовать аудиоразъем в моем компьютере, но в какой-то момент я хотел бы иметь возможность использовать звуковые карты USBаналогичным образом.В этот момент я хотел бы иметь возможность управлять несколькими сигналами (используя расширитель порта USB).

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

Во всяком случае, я надеялся на некоторые предложения.

1 Ответ

3 голосов
/ 09 апреля 2012

Enthought Tool Suite содержит примеры для обработки звука в реальном времени.Они находятся в папке chaco / advanced example , spectrum.py, spec_waterfall.py.Они используют библиотеку графиков Chaco и pyaudio для воспроизведения звука в реальном времени.(Вот еще одно живое БПФ на основе pyaudio и библиотеки графиков WCK.) Они действительно великолепны и дадут вам живую обратную связь о том, что происходит на вашем микрофоне.Вы можете изменять эти данные по мере их поступления и делать с ними все, что захотите, до их отображения.

Какова конечная цель того, что вы хотели бы сделать?Вы сказали «цепи управления», какие схемы вы хотели бы контролировать?Если вы публикуете то, что хотели бы сделать, возможно, кто-то может придумать лучший способ.

...