📄 声音matest.m
字号:
%语音信号采集、处理、传输、显示
[y,fs,bite]=wavread('ma.wav',[1,520000]);
%采集语音信号
sound(y,fs,bite);
% sound(y,3*fs);
%回放语音信号
figure(1);
plot(y);
title('原语音信号时间幅度图');
[Y]=fft(y,409600);
figure(2);
plot(abs(Y));
title('原语音信号频谱图');
prompt={'输入噪声强度(标准差)','输入持续时间/s'};
titles='参数选择';
def={'0.08','5'};
answer= inputdlg(prompt, titles, 1, def);
var=str2num(answer{1});
duration=str2num(answer{2});
n=duration*fs;
noise= var*randn(n,1);
%sound(noise,fs,bite);
len=length(y);
lnoise=length(noise);
if lnoise>len
v=[y(:,1);zeros(abs(lnoise-len),1)];
wave_change= v+ noise;
else
v=[noise(:,1);zeros(abs(lnoise-len),1)];
wave_change= v+ y(:,1);
end
% sound(wave_change,fs,bite);
figure(3);
plot(wave_change);
title('叠加噪声的语音信号时间幅度图');
[Y]=fft(wave_change,409600);
figure(4);
plot(abs(Y));
title('叠加噪声的语音信号频谱图');
%sound(wave_change,3*fs);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -