error using + matrix dimension must agree
2 views (last 30 days)
Show older comments
y1=audioread('bel.wav');
var = 0.1;
N=length(y1) ;
noise_1=var.*randn(N,1);
y_1n=y1 + noise_1;
subplot(311)
plot(y_1n)
may I know why I keep getting this error:
error using +
matrix dimensions must agree
error in
y_1n=y1 + noise_1;
0 Comments
Answers (1)
Dyuman Joshi
on 11 Oct 2023
Without the data, we can only guess. And the most probable guess is that y1 is a 2D array and using length() with non-vector array results in ambiguous outputs. A better option is to use size().
Try this -
y1 = audioread('bel.wav');
var = 0.1;
N = size(y1,1);
noise_1 = var.*randn(N,1);
y_1n = y1 + noise_1;
subplot(311)
plot(y_1n)
1 Comment
Adam Danz
on 11 Oct 2023
☝️ +1
Slight improvement in case there is more than 1 audio channel:
noise_1 = var.*randn(size(y1));
See Also
Categories
Find more on Multirate Signal Processing in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!