Vectors must be the same length.

2 次查看(过去 30 天)
Every time I run this code, I get "Error using plot Vectors must be the same length.
Showing error in line-8.
reading the audio input signal
[y, Fs] = audioread('recording for lab.wav')
x = resample(y, 8000, 44100);
info = audioinfo('recording for lab.wav')
t = 0:seconds(1/Fs):seconds(info.Duration);
t = t(1:end);
figure()
subplot(1,1,1)
plot(t,y)
xlabel('time')
ylabel('amplitude')
title('audio signal')
  3 个评论
Nitin Phadkule
Nitin Phadkule 2021-7-4
size of t and y must be same i.e. number of values in array t and y must be equal
Mathieu NOE
Mathieu NOE 2021-7-4
hello ,
You are not using Fs info to generate the time stamps (uh !) , and even worse you do a resampling function and do not apply the implication on Fs (that then would generate the right t vector)
so no wonder signal and time vector are of different length

请先登录,再进行评论。

回答(1 个)

Sulaymon Eshkabilov
编辑:Sulaymon Eshkabilov 2021-7-4
A small err in t's size:
...
t = t(1:end-1); % 1 last value has to be removed.
...

类别

Help CenterFile Exchange 中查找有关 Audio I/O and Waveform Generation 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by