Advertisement
Guest User

Untitled

a guest
Dec 15th, 2019
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.64 KB | None | 0 0
  1. fs = 48000;
  2. [xn,fs] = audioread('eric.wav');
  3. nf=1024;
  4. Y = fft(xn,nf);
  5. f = fs/2*linspace(0,1,nf/2+1);
  6. plot(f,abs(Y(1:nf/2+1)));
  7.  
  8. d = designfilt('lowpassfir' , 'FilterOrder' , 8 ,'CutoffFrequency' , 4000 , 'SampleRate' , fs);
  9. filteredf = filter (d, Y);
  10.  
  11. filteredt = ifft (filteredf);
  12.  
  13. sound(filteredf,Fs);
  14. t = [1:1000];
  15. Fc = 100000;
  16. Fm = 500000;
  17. [p,q]=rat(fs/Fm);
  18. filtere=resample(filteredt,p,q);
  19. filte = fft(filtere,nf);
  20. x = cos (2*pi*Fc*t);
  21. z = filte.*x;
  22.  
  23. demod = z.*cos(2*pi*Fc*t);
  24. [b,a] = butter(5,Fc*2/Fm);
  25. demod = filtfilt(b,a,demod);
  26. z1= awgn(z , 0 ,'measured');
  27. demod1 = z1.*cos(2*pi*Fc*t);
  28. [b,a] = butter(5,Fc*2/Fm);
  29. demod1 = filtfilt(b,a,demod1);
  30. z2= awgn(z , 10 ,'measured');
  31. demod2 = z2.*cos(2*pi*Fc*t);
  32. [b,a] = butter(5,Fc*2/Fm);
  33. demod2 = filtfilt(b,a,demod2);
  34. z3 = awgn(z ,30 ,'measured')
  35. demod3 = z3.*cos(2*pi*Fc*t);
  36. [b,a] = butter(5,Fc*2/Fm);
  37. demod3 = filtfilt(b,a,demod3);
  38.  
  39.  
  40. z1f = fft(z1,nf);
  41. z2f = fft(z2,nf);
  42. z3f = fft(z3,nf);
  43.  
  44. plot(z1f);title('SNR =0 in frequency');
  45. plot(z2f);title('SNR =10 in frequency');
  46. plot(z3f);title('SNR =30 in frequency');
  47. plot(z1);title('SNR =0 in time');
  48. plot(z2);title('SNR =10 in time');
  49. plot(z3);title('SNR =30 in time');
  50. [p1,q1]=rat(Fm/fs);
  51. z1fs=resample(z1f,p1,q1);
  52. z2fs=resample(z2f,p1,q1);
  53. z3fs=resample(z3f,p1,q1);
  54. sound(z1fs,fs);
  55. sound(z2fs,fs);
  56. sound(z3fs,fs);
  57.  
  58. fc2 = 100100 ;
  59. z4= awgn(z , 10 ,'measured');
  60. demod4 = z2.*cos(2*pi*fc2*t);
  61. [b,a] = butter(5,fc2*2/Fm);
  62. demod4 = filtfilt(b,a,demod4);
  63.  
  64.  
  65.  
  66. z5= awgn(z , 10 ,'measured');
  67. demod5 = z2.*cos(2*pi*fc*t+20);
  68. [b,a] = butter(5,fc*2/Fm);
  69. demod5 = filtfilt(b,a,demod5);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement