% [z,Fs]=audioread('Audio.wav');
% [z,Fs]=audioread('msg.wav');
% [z,Fs]=audioread('shake.wav');
% [z,Fs]=audioread('tweet.wav');
% [z,Fs]=audioread('Global.wav');
[z,Fs]=audioread('system.wav'); %读取语音信号的数据，赋给变量z
sound(z);                                              %播放原始语音信号
z1=randn(length(z),1);                       %产生与z长度一致的均匀分布随机信号

t=(0:(size(z)-1))/Fs; 
A=(min(abs(z))+max(abs(z)))*0.5;
z2=A*sin(2*pi*5000*t);         %加入正弦噪音

z4=z+z1+z2';                    %随机噪声合成
sound(z4);                                             %播放加噪声后的语音信号

Wp_1=[0.35*pi,0.65*pi];
Ws_1=[0.25*pi,0.75*pi];
Ap_1=2;
As_1=17;
[N_1,Wn_1]=buttord(Wp_1/pi,Ws_1/pi,Ap_1,As_1);  %计算巴特沃斯滤波器的阶数和截止频率
[bz,az]=butter(N_1,Wn_1,'bandpass');           %频率变换法设计巴特沃斯带通滤波器

figure(1);
freqz(bz,az,2048);
f2=filter(bz,az,z4);
sound(f2);                                              %播放滤波后的语音信号
figure(2);
subplot(2,1,1);
plot(t,z4);
set(gca,'Fontsize',22);
title('滤波前加噪声的语音信号时域波形图','Fontsize',22);
xlabel('时间（s）','Fontsize',22);
ylabel('幅值','Fontsize',22);
subplot(2,1,2);
plot(t,f2);  
set(gca,'Fontsize',22);
title('滤波后的语音信号时域波形图','Fontsize',22);
xlabel('时间（s）','Fontsize',22);
ylabel('幅值','Fontsize',22);
figure(3);
f=Fs*(0:1023)/2048;
y2=fft(z4,2048);
subplot(2,1,1);
plot(f,abs(y2(1:1024)));                  %画出滤波前的频谱图
set(gca,'Fontsize',22);
title('滤波前加噪声的语音信号的频谱','Fontsize',22)
xlabel('频率','Fontsize',22);
ylabel('幅值','Fontsize',22);
F0=fft(f2,2048);
subplot(2,1,2);
plot(f,abs(F0(1:1024)));              %画出滤波后的频谱图
set(gca,'Fontsize',22);
title('滤波后的语音信号的频谱','Fontsize',22);   
xlabel('频率','Fontsize',22);
ylabel('幅值','Fontsize',22);
