Afficher le waveform d'un wav

Soyez le premier à donner votre avis sur cette source.

Vue 7 634 fois - Téléchargée 884 fois

Description

Code adapté de planet-source-code, commentaires traduis.
Je l'ai modifié pour pouvoir l'utiliser dans mon projet de logiciel musical

Source / Exemple :


Voir zip

Conclusion :


Pas besoin de commentaires.

Codes Sources

A voir également

Ajouter un commentaire Commentaires
yanthorpes91 Messages postés 3 Date d'inscription lundi 30 août 2004 Statut Membre Dernière intervention 27 octobre 2004
5 déc. 2004 à 20:19
C'est très bien fait ! bravo ! En plus ça vas me servir pour mon TPE :-)
DDelec24 Messages postés 109 Date d'inscription jeudi 23 octobre 2003 Statut Membre Dernière intervention 23 octobre 2007
30 juil. 2004 à 22:04
Je me suis servit de ton code pour afficher les infos sur les wavs (format, fréquences ...)
C'est sympa [:)] !!
Proger Messages postés 248 Date d'inscription vendredi 10 novembre 2000 Statut Membre Dernière intervention 19 décembre 2008
18 mai 2002 à 15:41
Analyseur de spectre tadiiin :

Function FDT(ElCnt, ByRef ls(), Sortie() As Double, Harmonique As Long) As Long
'tranformé discrete de Fourier
'code issue d'un cours d'algo, retranscrit et intégré pour VB par Proger
'même s'il sais pas trop a quoi correspond ce truc
'Parametre :
'ElCnt = longueur de Ls() - on aurai pu le faire avec UBound, mais bon...
'Ls() : tableau des valeurs a analyser
'Sortie() : pointe vers un tableau qui contiendra le résultat de l'analyse
'Harmonique : indiquez ici une valeur d'harmonique (entre 1 et 48 c'est bien), ca sera egal a la longueur de Sortie()

'plus l'harmonique est élevé, plus il y a de ... je sais pas.
Dim nCos() As Double
Dim nSin() As Double
Dim Harmonique As Integer
Dim Fondamentale As Double 'est inutilisé, je sais pas pourquoi
maxech = ElCnt 'longueur d'échantillon a traité
ReDim nCos(maxech) As Double
ReDim nSin(maxech) As Double
ech = ElCnt 'longueur totale de l'echantillon reçu
If Harmonique 0 Then Harmonique 1
PI = 3.1415926535893
For i = 1 To maxech
Fondamentale = Fondamentale + ls(i)
Next i
Fondamentale = Fondamentale / maxech
For i = 1 To Harmonique
For j = 1 To maxech
nCos(j) = nCos(j) + ls(j) * Cos(i * (ech / (maxech * 2 * PI)))
nSin(j) = nSin(j) + ls(j) * Sin(i * (ech / (maxech * 2 * PI)))
Next j
nCos(i) = 2 * nCos(i) / ech
nSin(i) = 2 * nSin(i) / ech
Next i
Fondamentale = Fondamentale * Fondamentale
ReDim Sortie(Harmonique) As Double
For i = 1 To Harmonique 'truc de Parceval
Sortie(i) = nCos(i) * nCos(i) + nSin(i) * nSin(i)
Next i
FDT = Harmonique 'oui bon ça, ça sert a rien :)
End Function

J'ai fait marcher ce code devant qqun qui m'a dit que "c'est ça, c'est bon, tu as le trucmuche de Fourier de ton signal" , mais moi j'ai rien compris, alors inutile de me demander de l'aide...
vanpet Messages postés 149 Date d'inscription lundi 17 décembre 2001 Statut Membre Dernière intervention 5 février 2006
11 avril 2002 à 11:23
bientot, il lira le fichier, patience... j'aurai peut-etre besoin d'aide ! je compte utiliser DirectX (comme ca par apres on pourra lire plusieurs fichiers en même temps) mais alors ca suit pas les Bytes au fur et à mesure, ca lit comme ça "paf" d'une traite... et donc pas moyen defaire une ligne qui suit l'avancement de la lecture... sauf évidemment si qqu'un sait comment on fait ! AIDEZ MOI PLZZ !
intello2001 Messages postés 102 Date d'inscription mercredi 11 octobre 2000 Statut Membre Dernière intervention 9 septembre 2003
10 avril 2002 à 21:30
c'est super mais dommage qui ne lit pas tout les fichier
Afficher les 9 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.