Thanks Dear walter If I wish to plot both channels then how to do that?
how to fix the following error?
34 views (last 30 days)
dear Seniors and Experts I need solution for following code kindly help me to fix it .
t=0:0.001:2; % 2 secs @ 1kHz sample rate
x=chirp(t,0,1,150); % Start @ DC, cross 150Hz at t=1sec
F = 0:.1:100;
[y,f,t,p] = spectrogram(x,256,250,F,1E3,'yaxis');
% NOTE: This is the same as calling SPECTROGRAM with no outputs.
axis xy; axis tight; colormap(jet); view(0,90);
[y,fs]=audioread('Mithe Mustafa Tey 5sec.mp3');
NW = round(fs*0.250);
[S,F,T,P] = spectrogram(y,NW,,,fs);
Error using spectrogram>chkinput (line 252)
X must be a vector (either row or column).
Error in spectrogram (line 166)
while I click on line 252 and 166 it shows this
line 252 = error(message('signal:spectrogram:MustBeVector', 'X'));
line 166 = chkinput(x);
More Answers (1)
Walter Roberson on 26 Mar 2019
Your mp3 is stereo, 2 channels. spectrogram() can only process one channel at a time.
You need to do one of the following:
- Choose one of the two channels and only process that one; or
- combine the two channels into one, such as by using mean(); or
- call spectrogram twice, once for each of the channels.