it-swarm.com.ru

Любая OpenCV-подобная библиотека C/C++ для обработки аудио?

Есть ли что-то еще, что напоминает (по духу) OpenCV, но для обработки звука и извлечения из него некоторого интеллекта? Возможности могут варьироваться от: -

  1. Мультиплатформенный захват звука и воспроизведение звука
  2. DSP - Аудио фильтры
  3. Обнаружение тона
  4. Тональный анализ свойств
  5. Синтез тона (различные стандартные формы волны)
  6. Признание с учетом некоторого корпуса и модели распознавания (например, определение музыкальных инструментов, ударов, человеческой речи и т.д.) - потенциально может использовать другие проекты с открытым исходным кодом для фактической части распознавания (сфинкс)
  7. Синтез речи/музыки - можно снова использовать некоторые другие проекты с открытым исходным кодом (фестиваль)

Хорошо, если библиотека работает на raw audio s.t. преобразование формата/кодирования - это внешние проблемы, решаемые другими существующими библиотеками (например, из ffmpeg).

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

45
icarus74

Для захвата и воспроизведения аудио мне в голову приходит portaudio .

Для обработки аудио STK выглядит многообещающе.

Взгляните и на этот связанный вопрос: Может ли кто-нибудь порекомендовать приличную DSP/речевую библиотеку на C++?

Я рекомендую эти три библиотеки:

  1. очень прост в использовании и удобен для общей обработки сигналов Aquila-dsp

  2. сильная библиотека для обработки аудиосигнала, хотя ее сложно использовать, и она очень большая и сложная для начинающих: CLAM Project

  3. еще один, у меня нет опыта, стоит подумать. чпл

30
Jong Bor Lee

Ознакомьтесь с Essentia http://essentia.upf.edu/ Essentia - это библиотека C++ с открытым исходным кодом для анализа аудио и музыкальной информации на основе аудио ... Она содержит обширную коллекцию многократно используемых алгоритмов, которые реализуют функциональность ввода/вывода звука, стандартные блоки цифровой обработки сигналов, статистическая характеристика данных и большой набор спектральных, временных, тональных и высокоуровневых музыкальных дескрипторов.

Существует также ветка openFrameworks, хотя вы можете задержать ее до тех пор, пока она официально не станет 64-битной, C++ 11 через пару месяцев . https://github.com/GiantSteps/Essentia-Libraries

7
Borg

Я думаю, вы можете попробовать звуковую библиотеку Gaudio - http://www.geek-audio.org

Библиотека Gaudio поддерживает декодирование звука, кодирование и dps.

0
Petx