Outils pour utilisateurs

Outils du site


francois:fft_sur_un_fichier_pcm

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
francois:fft_sur_un_fichier_pcm [2013/04/06 10:27] – créée francoisfrancois:fft_sur_un_fichier_pcm [2013/10/23 09:21] (Version actuelle) – francois
Ligne 2: Ligne 2:
  
 http://www.unilim.fr/pages_perso/jean.debord/math/fourier/fft.htm http://www.unilim.fr/pages_perso/jean.debord/math/fourier/fft.htm
 +
 +**Génération de ".wav" sinus**
 +
 +http://www.audiocheck.net/audiofrequencysignalgenerator_sinetone.php
 +
 +<file scilab fft_pcm.sce>
 +//Composantes fréquentielles d'un signal
 +//----------------------------------
 +// Construction d'un signal bruité échantilloné à 1000hz 
 +//        contenant deux fréquences pures à  50 et 70 Hz.
 +sample_rate=48000;
 +
 +file_path = "/home/francois/develop/calcul/scilab/audio"
 +file_name = "sin_1000Hz_-3dBFS_3s.wav"
 +
 +afd = mopen(file_path + "/" + file_name, "rb")
 +data = []
 +// Positionning of the seek pointer to the start of wave
 +mseek(44, afd)
 +
 +while ~meof(afd)
 +  data = [data, mget(10,'s',afd)]
 +end
 +
 +mclose(afd)
 +hsize=max(data)
 +data = data / (2^15)
 +
 +N=size(data,'*'); //nombre d'échantillons
 +y=fft(data, -1);
 +DSP=10*log10((1/N*abs(y))^2);
 +
 +//y est symétrique, on ne garde que  N/2 points
 +f=sample_rate*(0:(N/2))/N; //vecteur de fréquences associé
 +n=size(f,'*')
 +clf()
 +plot(f,DSP(1:n))
 +</file>
francois/fft_sur_un_fichier_pcm.1365244069.txt.gz · Dernière modification : (modification externe)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki