Matlab GUI 中怎样导入一段声音,对它进行FFT分析?
来源:百度知道 编辑:UC知道 时间:2024/05/13 12:11:03
怎样能够将事先录好的声音导入GUI中,并对它进行FFT的分析?
就是在gui对应的M文件里使用wav文件读取语句:
wavread('*.wav') *代表不同的文件名,同时读入的文件必须在当前的路径里。
如果需要得要各个参数,可是设置输出量:
[y,freq,bit]=wavread('*.wav')
至于FFT的分析,将wav文件读入后,用FFT函数进行分析。下面的代码是一个实例,希望对你有所帮助。
用MATLAB对原始语音信号进行分析,画出它的时域波形和频谱
fs=8000; %语音信号采样频率为8000
x1=wavread('pb8k.wav');
t=(0:length(x1)-1)/8000;
y1=fft(x1,2048); %对信号做2048点FFT变换
f=fs*(0:1023)/2048;
figure(1)
plot(t,x1) %做原始语音信号的时域图形
grid on;axis tight;
title('原始语音信号');
xlabel('time(s)');
ylabel('幅度');
figure(2)
plot(f,abs(y1(1:1024))) %做原始语音信号的FFT频谱图
grid on;axis tight;
title('原始语音信号FFT频谱')
xlabel('Hz');
ylabel('幅度');
%语句录入
[y,freq,bit]=wavread('name.wav')
%数据,采样频率,位