Advertisement
Guest User

Untitled

a guest
Dec 19th, 2014
177
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.00 KB | None | 0 0
  1. function czPodst = dzwiek(filename)
  2. clear all;
  3. close all;
  4. filename = 'mbi04jeden.wav';
  5. [y, fs] = wavread(filename); %wektor scieżki y, fs - czestprobkowania
  6. t=(0:length(y)-1)/fs; % wyskalowane w sekundach
  7. ti =length(y)/fs % czas trwania wav
  8. figure(1);
  9. plot(t, y);
  10. %biore 2 "e", odczytuje z wykresu ok. 17500-22000
  11.  
  12. ye1 = y(17500:22000);
  13.  
  14. [r,lag] = xcorr(ye1,1000, 'coeff'); %1000 jako ograniczenie do mneijszej lcizby powtórzeń
  15.  
  16. %fPowtarzania = 1/0.01;
  17. if(nargout == 0)
  18. %podglad sygnalu
  19. figure(2);
  20. t2 = (1:length(ye1))/fs; %otrzymuje w czasie;
  21. plot(t2, ye1);
  22.  
  23. %rysujemy autokoralacje
  24. figure(3);
  25. lag = lag/fs;
  26. plot(lag,r);
  27.  
  28.  
  29.  
  30. f_podst = mod(fs, 1000); % ponieważ widmo po spróbkowaniu jest okresowe z okresem Fs
  31. if f_podst > Fs/2
  32. f_podst = -(Fs-f_podst); % jeżeli czest. wyliczona jest większa niż Fs/2 to jest to częstotliwość ujemna
  33. f_podst = abs(f_podst);
  34.  
  35. %jeszcze musza ogarnac czy dobrze wyskalowalem 2 plot i wyznacyzc f powtarzania
  36. end
  37. endfunction
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement