求助:求音乐波形时遇到的问题
用matlab求音乐波形的代码= wavread('1.wav');
plot(x);
得到的横坐标是采样点的数值
如何得到横坐标是时间的数值?
请知道的帮帮忙
谢谢
[ 本帖最后由 zhangnan3509 于 2007-7-4 09:32 编辑 ] 给出时间就行了:
t=(0:length(x)-1)/fs;
plot(t,x) 那请问如果也想把短时能量和过零率的横坐标也该为用时间显示
也问应该如何修改
= wavread('F:\code\music\5.wav');
win=fs*20/1000;%
inc=win*0.5; %
%计算短时能量
subplot(len,1,2);
amp = sum(abs(enframe(filter(, 1, x), win, inc)), 2);
t=(0:length(amp)-1)/fs;我这样写显示的小数
plot(t,amp);
%计算过零率
subplot(len,1,3);
tmp1= enframe(x(1:end-1), win, inc);
tmp2= enframe(x(2:end), win, inc);
signs = (tmp1.*tmp2)<0;
diffs = (tmp1 -tmp2)>0.02;
zcr = sum(signs.*diffs, 2);
t=(0:length(zcr)-1)/fs;我这样写显示的小数
plot(t,zcr);
页:
[1]