GESTION DU SON AVEC DELPHI : RECHERCHE D'UN FILTRE DE FREQUENCE

jamy02 Messages postés 7 Date d'inscription jeudi 9 juin 2005 Statut Membre Dernière intervention 11 juin 2005 - 10 juin 2005 à 23:19
jamy02 Messages postés 7 Date d'inscription jeudi 9 juin 2005 Statut Membre Dernière intervention 11 juin 2005 - 11 juin 2005 à 23:42
Merci à KENAVO qui m'a donné l'adresse d'un composant WaveIn qui m'a permis de gérer unnWave
dans Delphi.
En creusant au niveau du composant j'ai utilisé la propriété Peak qui est interessante.

Mais existe t-il un composant qui réalise un filtre passe bas sur un échantillon de signal ?

Cordialement

2 réponses

cs_Kenavo Messages postés 702 Date d'inscription vendredi 21 mars 2003 Statut Membre Dernière intervention 1 octobre 2009 5
11 juin 2005 à 12:50
Salut,



J'ai repensé à ton problème, et en réfichissant un peu (car ce n'est
pas pour me vanter, mais il m'arrive de réfléchir un peu), je crois que
les pistes que je te donnais ne sont pas adaptées.



Le filtres numériques (et le traitement numérique du signal en général)
forment un domaine plutôt complexe des mathématiques (et mes souvenirs
sur les transformées en Z et la transmormée de Fourrier discrète sont
trop loin pour que je te donne des pistes sérieuses)



Un filtre passe-bas du premier ordre est facilement codé par Out = (n * Out-1 + In) / (n+1) , In étant l'échantillon du signal d'entrée, Out-1 étant le résultat du calcule avec l'échantillon précédent In-1



Dans ton cas , il y a un fossé entre la fréquence que tu cherche
(quelques hetz max) et celles qu'on peut observer dasn notre buffer (en
gros spectre audio)



Mais, il y a peut être une autre méthode pour arriver à ton résultat :
tu règles le TWaveIn avec un buffer assez court, et tu construit un
tableau des moyennes (TWaveIn.Level) des buffers obtenus
(WaveIn1BufferFull). En fait tu crées un tableau qui contient les
valeurs du vu-mètre, si le BPM que tu cherches est "visible" dans le
vu_mètre, tu dois pouvoir le retrouver dans le tableau. Pour que ce
soit assez aisé, cela suppose tout de même d'avoir un temps marqué
assez ... lourd !



Amuse-toi bien !





Ken@vo

Code, Code, Codec !






[%3C/body ]
0
jamy02 Messages postés 7 Date d'inscription jeudi 9 juin 2005 Statut Membre Dernière intervention 11 juin 2005
11 juin 2005 à 23:42
Bonsoir,
Oui ,j'avais déjà réalisé un bout de programme pour cela mais avec le level, un
boom de batterie peut se confondre avec un peak de guitare électrique.C'est
pour cela qu'il faut filtrer et booster entr' 60 et 90 Hz dans mon cas.
Je suis en train de travailler sur un composant que j'ai trouvé pour l'adapter.
Pas facile il s'agit de dspIIRFilter sur http://www.teworks.com/ .
Avec ce composant, on peut par exemple analyser en temps réel un signal
avec un peu plus de 4 millions de samples / s.
Essayé sur ma machine et réglé en lowpass et filtre de butterworth de 2nd ordre.
A plus
0
Rejoignez-nous