怎么用MATLAB采集声音啊,是直接在MATLAB中录声音还是先录好呢?
s=8000; %语音信号采样频率为8000
x1=wavread('D:\MATLAB\Work\shengkacaiji.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('幅度');
一运行就出现下面的错误,是怎么回事呢,求大神帮忙呀,感激不尽啊!!!为什么会打不开那个.wav的文件呢?
??? Error using ==> wavread
Cannot open file.
Error in ==> zede_1 at 2
x1=wavread('D:\MATLAB\Work\shengkacaiji.wav');
追问:那为什么我上面那个程序不行呢,出现了那个错误,求多多指教呀!!!感激不尽!!
答案:1、可以事先录好,也可以直接在MATLAB中录,不过此时需要有相关数据采集卡装在电脑上;
2、x1=wavread('D:\MATLAB\Work\shengkacaiji.wav');中wavread的用法你好像没弄懂,文件后缀不要写 。
其他:事先录好的声音文件,然后通过matlab来处理的。
上一个:绘制sin(1/t)图形,t在[-1,1]之间。以0.001为步长绘制。用matlab编程实现,谁能给出程序?谢谢!
下一个:matlab中scope的图形输出问题