web-dev-qa-db-fra.com

Une bibliothèque C/C++ de type OpenCV pour le traitement audio?

Existe-t-il quelque chose de plus qui ressemble à OpenCV (en esprit), si ce n'est pour traiter l'audio et en tirer des informations? Les capacités peuvent aller de: -

  1. Capture audio multiplateforme et lecture audio
  2. DSP - Filtres audio
  3. Détection de tonalité
  4. Analyse des propriétés tonales
  5. Synthèse de tonalité (différentes formes d'onde standard)
  6. Reconnaissance étant donné le corpus et le modèle de reconnaissance (par exemple, déterminer les instruments de musique, les rythmes, la parole humaine, etc.) - pourrait éventuellement utiliser d'autres projets à source ouverte pour la partie reconnaissance (sphinx)
  7. Synthèse vocale/musicale - pourrait à nouveau utiliser d'autres projets open source (festival)

C'est bien si la bibliothèque fonctionne sur audio brut à la. Les conversions format/encodage sont des problèmes externes gérés par d’autres bibliothèques existantes (par exemple, de ffmpeg).

Je ne suis pas un expert dans ce domaine, mais je dois utiliser une telle API et me demander si de telles bibliothèques existent. Mon choix de termes pour déterminer les capacités n'est probablement pas le meilleur. Les experts voudront peut-être modifier cette question.

45
icarus74

Pour la capture et la lecture audio, portaudio me vient à l’esprit.

Pour le traitement audio, STK semble prometteur.

Consultez également cette question connexe: Quelqu'un peut-il recommander une bibliothèque de discours/DSP décente en C++?

Je recommande ces trois libs:

  1. très facile à utiliser et convivial pour le traitement général du signal Aquila-dsp

  2. lib forte pour le traitement du signal audio bien que difficile à utiliser et qui est très gros et compliqué pour les débutants: Projet CLAM

  3. un autre que je n'ai aucune expérience à ce sujet, mérite d'être considéré cependant. tspl

30
Jong Bor Lee

Découvrez Essentia http://essentia.upf.edu/ Essentia est une bibliothèque open source C++ pour l'analyse audio et les informations musicales audio ... Elle contient une vaste collection d'algorithmes réutilisables qui implémentent fonctionnalité d'entrée/sortie audio, blocs de traitement du signal numérique standard, caractérisation statistique des données et vaste ensemble de descripteurs de musique spectraux, temporels, tonaux et de haut niveau.

Il existe également une branche openFrameworks, bien que vous souhaitiez peut-être attendre jusqu’à ce qu’elle soit officiellement au format 64 bits, C++ 11 dans quelques mois . https://github.com/GiantSteps/Essentia-Libraries

7
Borg

Je pense que vous pouvez essayer la bibliothèque de son Gaudio - http://www.geek-audio.org

La bibliothèque Gaudio prend en charge le décodage audio, l’encodage et le format DPS.

0
Petx