Kallimakhos
Messages postés6Date d'inscriptionlundi 20 août 2001StatutMembreDernière intervention28 février 2007
-
23 mars 2002 à 22:50
yanthorpes91
Messages postés3Date d'inscriptionlundi 30 août 2004StatutMembreDernière intervention27 octobre 2004
-
5 déc. 2004 à 20:19
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
yanthorpes91
Messages postés3Date d'inscriptionlundi 30 août 2004StatutMembreDernière intervention27 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és109Date d'inscriptionjeudi 23 octobre 2003StatutMembreDernière intervention23 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és248Date d'inscriptionvendredi 10 novembre 2000StatutMembreDernière intervention19 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és149Date d'inscriptionlundi 17 décembre 2001StatutMembreDerniè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és102Date d'inscriptionmercredi 11 octobre 2000StatutMembreDernière intervention 9 septembre 2003 10 avril 2002 à 21:30
c'est super mais dommage qui ne lit pas tout les fichier
kilomaster
Messages postés130Date d'inscriptionmercredi 2 janvier 2002StatutMembreDernière intervention 6 décembre 2006 25 mars 2002 à 14:42
c'est génial
vanpet
Messages postés149Date d'inscriptionlundi 17 décembre 2001StatutMembreDernière intervention 5 février 2006 24 mars 2002 à 18:13
Pour Patrice99 : si tu es capable de faire un analyseur de spectre, tu m'interesse vachement pour mon projet de musique, voir rubrique labo "VBFrance Music Studio"
@+
cs_Patrice99
Messages postés1221Date d'inscriptionjeudi 23 août 2001StatutMembreDernière intervention 9 septembre 2018 24 mars 2002 à 14:08
Très bien, ca me donne envie de faire un analyseur de spectre pour comparer avant et après une compression mp3...
Si quelqu'un sait lire les fichiers mid, ca m'intéresse vachement !
Kallimakhos
Messages postés6Date d'inscriptionlundi 20 août 2001StatutMembreDernière intervention28 février 2007 23 mars 2002 à 22:50
Génial ! En mot à voir ... Sugestion : ajouter de quoi lire les sons et pourquoi pas un curseur qui suit l'onde au fur et à mesure de la lecture... Bonne prog à tous !
5 déc. 2004 à 20:19
30 juil. 2004 à 22:04
C'est sympa [:)] !!
18 mai 2002 à 15:41
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...
11 avril 2002 à 11:23
10 avril 2002 à 21:30
25 mars 2002 à 14:42
24 mars 2002 à 18:13
@+
24 mars 2002 à 14:08
Si quelqu'un sait lire les fichiers mid, ca m'intéresse vachement !
23 mars 2002 à 22:50