【发布时间】:2010-12-28 21:44:30
【问题描述】:
问题如标题所述。
在我抽取一个音频信号后,它会以 n 个因子依次加快音频剪辑的速度。我希望抽取的剪辑和原始剪辑的时间长度相同。
这是我的代码,分析和抽取钢琴 .wav
[piano,fs]=wavread('piano.wav'); % loads piano
play=piano(:,1); % Renames the file as "play"
t = linspace(0,time,length(play)); % Time vector
x = play;
y = decimate(x,2);
stem(x(1:30)), axis([0 30 -2 2]) % Original signal
title('Original Signal')
figure
stem(y(1:30)) % Decimated signal
title('Decimated Signal')
%changes the sampling rate
fs1 = fs/2;
fs2 = fs/3;
fs3 = fs/4;
fs4 = fs*2;
fs5 = fs*3;
fs6 = fs*4;
wavwrite(y,fs,'PianoDecimation');
可能的解决方案:将剩余的每个点加倍,因为新的抽取剪辑比原始剪辑短 2 倍。
我只是希望能够对这两个剪辑进行并排比较。
【问题讨论】:
标签: matlab audio signal-processing sampling