J'ai lus et parcourus pas mal de choses en anglais et en français mais je n'arrive pas à finaliser un projet pourtant basique. En gros, je veux créer un programme qui lira tous les fichiers sons d'un répertoire et en fera une FFT et un spectrogramme, les deux étant pour chaque son dans la même figure par soucis d'ergonomie.
Je suis très très mauvais en programmation et mes compétences mathématiques ne sont pas les plus développées chez moi. Après pas mal d'investigations, j'ai créé ce code qui fonctionne plutôt pas mal par rapport à mon ancien code mais mon spectrogramme est cependant loin du résultat voulus.
Si quelqu'un est à même de m'aider à ajouter je pense les trois lignes de code nécessaires tout en m'expliquant à quoi elles servent ce serait vraiment magnifique
Merci beaucoup d'avance.
files=dir('A2-tone.wav')
for j=1:length(files),
fprintf(1,'found file:%s',files(j).name);
[x,FS]= audioread(files(j).name);
N=length(x);
%% FFT
X = fft(x,N);
X=X(1:N/2);
xMagnitude= abs(X);
f=[0:N/2-1]*FS/N;
figure (1);
subplot(211)
plot(f,xMagnitude);
title('FFT');
xlabel('frequency (Hz)');
ylabel('amplitude');
%% Spectrogram
[S,F,T,P] =spectrogram(x,2048,1024,N,FS);
% S = spectrogram(x,window,noverlap,nfft,fs)
subplot(212)
plot(S);
title('Spec');
xlabel('time)');
ylabel('frequency (Hz');
end