Vu metre DirectSound [Résolu]

Signaler
Messages postés
305
Date d'inscription
lundi 7 janvier 2002
Statut
Membre
Dernière intervention
10 août 2011
-
Messages postés
47
Date d'inscription
mardi 21 novembre 2006
Statut
Membre
Dernière intervention
5 novembre 2016
-
Bonjour les gens,

Je souhaiterai faire un vu-mettre associé au son récupéré par le microphone. Alors mon truc fonctionne si je prend un bitrate de 8 bits, mais pas avec du 16 bit.

voila le code pour du 8bits :

for(int i = 0; i < CaptureData.Length; i++){
if (CaptureData[i] > bMax) bMax = CaptureData[i];
}
bMax -= 127;

Explications :
CaptureData est le flux récupéré par le micro.
bMax est la valeur que j'affiche dans un graph.
... en gros, je récupère la valeur maximum de mon tableau CaptureData, et ca, ca marche !

Par contre, ces opérations ne fonctionnent pas avec du 16 bits... quelqu'un a une idée ?
Ce serait sympa, merci !

Yoann

4 réponses

Messages postés
305
Date d'inscription
lundi 7 janvier 2002
Statut
Membre
Dernière intervention
10 août 2011
4
J'ai trouvé la solution il y a peu.

Il "suffit" de récupérer les données du micro au moyen d'un tableau de int16, et non au moyen d'un tableau de bytes.
Messages postés
47
Date d'inscription
mardi 21 novembre 2006
Statut
Membre
Dernière intervention
5 novembre 2016

Salut yoannd.
Je recherche comment recuperer le son du microphone.
Pourrai tu me dire comment tu rempli ta variable CaptureData STP.
Ca fait 3 jours que je tourne en rond...
En gros je cherche simplement a enregistrer sur le disque le son venant du micro.
Merci d'avance.

David
Messages postés
305
Date d'inscription
lundi 7 janvier 2002
Statut
Membre
Dernière intervention
10 août 2011
4
Houla, il va me falloir chercher dans mes archives, ce qui n'est pas gagné... on parle ici d'un projet qui a plus de 3 ans et sur lequel je ne bosse plus depuis belles lurettes. Je te tiens au courant si je retrouve mes sources.
Messages postés
47
Date d'inscription
mardi 21 novembre 2006
Statut
Membre
Dernière intervention
5 novembre 2016

Merci beaucoup.