#1 Le 03/11/2016, à 17:39
- Destroyers
[C++] stocker un son dans un tableau (de type primitif)
Bonjour
Je souhaite me lancer un petit projet en C++ qui ne me semble pas bien compliqué, et pourtant ...
Je voudrais me lancer dans le traitement de signal sonore.
Mon premier objectif serait de filtrer un intervalle de fréquence d'un son.
Je me suis proposé 6 étapes :
-charger le son (et pas seulement des .wav ... donc première difficulté)
-lire les échantillons et les stocker dans un tableau (comment faire ? comment extraire ces échantillons du fichier sonore ? avez vous une lib qui propose une telle fonction ? un tableau de quel type ?)
-passer ces échantillons dans la transformée de Fourier discrète (pas de problème)
-traiter le tableau de données retourné par la Transformée de Fourier discrète (pas de problème)
-passer ces données dans la transformée de Fourier inverse pour retrouver un signal sonore (je vois moins comment faire mais google sera mon ami)
-enregistrer le tout dans un fichier sonore (et seulement un .wav ...)
Mon problème ne réside donc pas vraiment dans le traitement du signal en lui même, mais plutôt dans la manière de charger / enregistrer un fichier sonore non .wav,
et je ne sais pas non plus comment extraire les échantillons pour les stocker dans un simple tableau.
Je vous remercie d'éclairer ma lanterne
(je préférerai des libs libres (donc pas FMod) et orientées objet, mais je ferai avec tous ce que vous me donnerez).
Merci merci.
Dernière modification par Destroyers (Le 03/11/2016, à 17:40)
Hors ligne
#2 Le 03/11/2016, à 20:22
- claudius01
Re : [C++] stocker un son dans un tableau (de type primitif)
Bonsoir,
Peut-être que les projets référencés ici t’intéresseront: cf. Any OpenCV-like C/C++ library for Audio processing? [closed]
Hors ligne
#3 Le 03/11/2016, à 21:29
- lann
Re : [C++] stocker un son dans un tableau (de type primitif)
Il y a quelques temps j'avais fait un projet sur un accordeur de guitare :
https://launchpad.net/guitartuner
ca te donnera peut être des idées
<Modéré>
Hors ligne
#4 Le 06/11/2016, à 22:57
- alius
Re : [C++] stocker un son dans un tableau (de type primitif)
Salut,
pour ma part j'ai beaucoup utilisé le STK : https://ccrma.stanford.edu/software/stk/ pour ce qui est traitement bas niveau donc ce qui te concerne je pense que ça suffira largement
après si tu veux faire des truc d'un peu plus haut niveau j'ai pas mal utilisé la lib essentia : http://essentia.upf.edu/
enfin j'ai aussi utilisé cette lib là http://marsyas.info/ mais dans une moindre mesure
EDIT: j'ai oublié de mentionner que tu peux aussi utiliser la lib alsa : la learning curve est un peu plus difficile qu'avec les lib susnommées mais c'est quand meme fun
Dernière modification par alius (Le 06/11/2016, à 23:02)
Alius
Hors ligne