Salut,
j'ai un signal audio transformé en fichier .mat dont je connais bien les caractéristiques: (1000 Hz et 94dB) ainsi que la fréquence d'échantillonnage : 65536 Hz.
on sait en plus que: dB=20*log(P/Po) avec Po=2*10exp(-5) Pascal
J'ai envie de retrouver la fréquence de 1000Hz et la magnitude de 94dB à partir du signal temporel que je détient.
Voici mon code en Matlab:
Voilà mes 2 signaux en pièce jointe( 1er signal=temporel et 2eme signal=frequentiel)Code:
1
2
3
4
5
6
7
8
9
10 x = abs(fft(Channel_1_Data)); Fs=65536; index = find(x == 0); x(index) = 1e-17; mag = 20*log10(x); m=length(Channel_1_Data); n=pow2(nextpow2(m)); f = (0:length(mag)-1)*Fs; f = f(:); plot(f,mag)
Je ne sais pas si cela est bien codé et en plus je ne sais pas comment retrouver mes 1000Hz et 94 dB
Merci d'avance pour vos réponses.