Extraire les différentes fréquences d'un échantillon sonore - Page 2
Répondre à la discussion
Page 2 sur 2 PremièrePremière 2
Affichage des résultats 31 à 41 sur 41

Extraire les différentes fréquences d'un échantillon sonore



  1. #31
    antek

    Re : Extraire les différentes fréquences d'un échantillon sonore


    ------

    Citation Envoyé par Evil.Saien Voir le message
    Parce que si on n'analyse pas un flux, on ne doit pas tenir compte de ça ?
    J'ai dis ça ?

    -----

  2. #32
    Ludwig1

    Re : Extraire les différentes fréquences d'un échantillon sonore

    Citation Envoyé par Computer Mail Voir le message
    Pour clore la solution de l'API Windows, je travaille sur un système d'exploitation fait maison et écrit 100% en assembleur.
    Ok,
    Mais ça n'empêche que tu peux tout de même caller des appels sur les fonctions Windows. On passe par les registres du processeur me semble t'il.
    D'ailleurs, c'est exactement comme ça que je travaille avec ma machine virtuelle, elle est écrite en code, en dehors de toute
    considération Windows, ensuite on calle des appels sur les fonctions de MS. C'est simple c'est efficace ça marche et on gagne en temps de développement.

    Voici un Exemple comment on peut interfacer toutes les fonctions Windows ( C'est écrit pour une machine à pile mais comme
    tu maitrises l'assembleur semblerait'il ça ne devrait pas poser trop de PB pour adaptation.
    C'est écrit en notation Polanaise inversé.

    Code:
    { ------------------------------------------------------------------------
    
    We can access any function in any dll via the LoadLibrary and GetProc
    routines, but we have to have a reference to them to get started.
    
    When we call a Windows function, we move the parameters from the Forth
    data stack (pointed to by EPB) to the system stack (pointed to by ESP).
    
    We call all windows functions that we have addresses of via the
    PASCAL-CALL routine, which handles the details of building the stack
    frame for windows.  We don't simply switch stacks, because that would
    leave us with needed data in memory below the active windows stack --
    which could possibly nest to an undefined depth and write over it
    without any indication until things crashed.
    
    ------------------------------------------------------------------------ }
    
    CODE PASCAL-CALL ( x1 x2 .. xn n a -- x )       \ push right to left
       EDI PUSH                     \ save what forth cares about
       ESI PUSH                     \
       EBP PUSH                     \ ebp here is a place holder
       ESP EDI MOV                  \ remember where it is
       EBX EDX MOV                  \ edx is the proc address
       0 [EBP] ECX MOV              \ ecx in N
       4 # EBP ADD                  \ pop so ebp is current
       ECX ECX OR  0<> IF
          BEGIN                     \
             0 [EBP] PUSH           \ move data from stack to processor stack
             4 # EBP ADD            \ dispose of space on stack
          LOOP                      \ and repeat
       THEN                         \
       EBP 0 [EDI] MOV              \ write corrected stack pointer above frame
       EDX EDX OR                   \ check for uninitialized
       0<> IF  EDX CALL  THEN       \ call PASCAL function
       EAX EBX MOV                  \ return value
       EBP POP                      \ and restore registers
       ESI POP
       EDI POP
       RET END-CODE

    Cordialement

    Ludwig
    Dernière modification par Ludwig1 ; 10/03/2017 à 18h37.

  3. #33
    Computer Mail

    Re : Extraire les différentes fréquences d'un échantillon sonore

    Encore merci mais le système d'exploitation est 100% en assembleur, je souhaite garder ce pourcentage.

  4. #34
    Ludwig1

    Re : Extraire les différentes fréquences d'un échantillon sonore

    Citation Envoyé par Computer Mail Voir le message
    Encore merci mais le système d'exploitation est 100% en assembleur, je souhaite garder ce pourcentage.
    Pas de PB, c'était juste pour info

    Cordialement

    Ludwig

  5. #35
    Jack
    Modérateur

    Re : Extraire les différentes fréquences d'un échantillon sonore

    Vu le côté ésotérique de la demande, je crains que tu doives te résoudre à te retrouver tout seul dans ta démarche. L'exploitation directe d'un tel circuit est une activité de niche et rares en sont les spécialistes.

  6. #36
    Computer Mail

    Re : Extraire les différentes fréquences d'un échantillon sonore

    En électronique aurais-je plus de gens susceptibles de s'y connaître ?

  7. #37
    Jack
    Modérateur

    Re : Extraire les différentes fréquences d'un échantillon sonore

    J'en doute, mais je veux bien transférer la discussion si tu veux.

  8. #38
    Computer Mail

    Re : Extraire les différentes fréquences d'un échantillon sonore

    Je veux bien, merci.

  9. #39
    Jack
    Modérateur

    Re : Extraire les différentes fréquences d'un échantillon sonore

    ​Discussion transférée ...

  10. #40
    Computer Mail

    Re : Extraire les différentes fréquences d'un échantillon sonore

    On m'a dit ailleurs que le filtre anti-aliasing n'est pas indispensable la plupart des microphones ne dépassant pas les 20khz en bande passante, qu'en dites-vous ?

  11. #41
    Vincent PETIT
    Animateur Électronique

    Re : Extraire les différentes fréquences d'un échantillon sonore

    Salut,
    La personne qui a dit ça ne t'as pas donné l'explication qui va avec car dans bien des cas, on ne peut pas se passer du filtre antirepliement. Ce filtre est fonction, du signal à analyser, de la fréquence d'échantillonnage et de la durée du traitement informatique de l'analyse.

    Je m'explique
    en 3 temps :

    1) Je prends l'exemple de ton micro qui a une bande passante max de 20kHz, en gros ça veut dire que le signal utile qui en sortira ne dépassera pas les 20kHz mais tu peux très bien avoir aussi des perturbations, atténuées, ou du bruit au delà. Il faut comprendre que dans ce qui sortira du micro, il y aura ce qui t'intéresse pour ton application (tout ce qui est dans la bande passante du micro donc en dessous de 20kHz) et il y aura tout ce qui va t'embêter sérieusement (tous les polluants qui sont au delà de la bande passante, donc au dessus de 20kHz). On entrevoit un peu la présence d'un filtre là mais on ne sait pas encore à quelle fréquence il doit couper.

    2) Le théorème de Nyquist-Shannon dit que pour échantillonner un signal sans perdre d'info, il faut échantillonner au moins deux fois plus vite. Comme la bande passante utile est de 20kHz, on doit échantillonner à au moins à 40kHz. C'est bien beau d'échantillonner a 40kHz donc tous les 20µs mais encore faut il avoir le temps de traiter le signal échantillonner ! Lorsque ce théorème n'est pas respecter, par exemple le signal utile va jusque 30kHz et qu'on échantillonne à 40kHz, on voit ce qu'on appelle du repliement spectral et ça va mettre le bordel puisque tu aura l'impression d'avoir de l'information supplémentaire alors qu'il y en a pas. Pour te donner une image c'est comme ci tu entendais deux personnes, l'une avec une voix aiguë et l'autre avec une voix grave, parler en même temps. Tu vas probablement vouloir filtrer l'une des voix pour en entendre que l'autre sauf que comme l'une d'elle est le repliement spectral de l'autre et tu risque de te demander pendant un sacré moment pourquoi en filtrant une voix, l'autre s'atténue aussi. Autrement dit ton traitement informatique est complètement perdu.

    3) C'est là qu'intervient le filtre antirepliement. On avait dit en 1) que le signal utile est au maximum de 20kHz et on sait d'après le théorème du 2) que pour ne pas perdre d'info dans le signal utile on doit échantillonner a 40kHz et l'idéal serait qu'un filtre empêche de faire entrer dans l'ADC toutes les fréquences supérieures à 20kHz comme ça, pas de repliement spectral puisqu'on serait toujours dans le théorème de Nyquist Shannon. C'est ça le rôle du filtre antirepliement, il va forcer l'ADC a être conforme au théorème.

    Dans la pratique, c'est un peu plus compliquer car un tel filtre ne pourrait pas couper nette les fréquences au delà de 20kHz, un filtre réel a une pente. Il faut souvent un filtre avec un ordre relativement élevé pour que la pente ressemble le plus possible à la pente idéale (90°), cela implique qu'on aura toujours un tout petit peu de repliement spectral mais le but est qu'il soit le plus faible possible.


    Citation Envoyé par Computer Mail
    On m'a dit ailleurs que le filtre anti-aliasing n'est pas indispensable la plupart des microphones ne dépassant pas les 20khz en bande passante, qu'en dites-vous ?
    Il est possible de se passer d'un filtre antirepliement si on échantillonne largement plus vite que les 20kHz. Si tu échantillonnes a 200kHz par exemple, ça veut dire que le théorème de Nyquist Shannon n'est plus respecté (repli spectral) si le signal utile dépasse les 100kHz (voir le point 2) et l'histoire des deux fois plus vite). Lorsqu'un micro a une bande passante de 20kHz, on peu raisonnablement se dire qu'il ne doit plus rester grand chose à 100kHz par contre sans le filtre antirepliement, tu ne te protèges pas du bruit qui viendrait d'autre part.... alimentation à découpage, problème CEM etc...


    La technique du sur-échantillonnage permet de soulager l'ordre du filtre anti-repliement. Elle est suivie d'un sous échantillonnage, aussi appelée décimation, pour garder moins d'information et rendre le traitement possible par un microcontrôleur/processeur/FPGA.

Page 2 sur 2 PremièrePremière 2

Discussions similaires

  1. Sommes des fréquences différentes
    Par leorian dans le forum Physique
    Réponses: 6
    Dernier message: 10/07/2016, 06h15
  2. Logiciel --> ajouter des bruitages sonore par dessus une bande sonore qui est en lecture.
    Par AmandineLR dans le forum Logiciel - Software - Open Source
    Réponses: 1
    Dernier message: 15/06/2016, 12h54
  3. faire clignoter une lampe selon différentes fréquences
    Par xenelos dans le forum Électronique
    Réponses: 6
    Dernier message: 27/02/2015, 14h25
  4. beeper à 2 fréquences différentes
    Par gribouille51 dans le forum Électronique
    Réponses: 11
    Dernier message: 04/03/2014, 12h55
  5. Comment amplifier les basses fréquences sonore
    Par tête de brique dans le forum Électronique
    Réponses: 17
    Dernier message: 23/09/2007, 12h15
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...