create a chorus-effect

I've been trying to create a chorus effect in matlab. But there's something that doesn't work. I want to use this: y(n)=a*x(n) + b(x(n-t))
t= t0 + Asin(2*pi*f*n)
t0 is the delay
This is my attempt:
[x,fs]=wavread('filename.wav');
f=0.25;
delay_in_sampels=0.05*fs;%50 ms delay
index=1:length(x);
sincurve = 1*sin(2*pi*index*f);
y = zeros(length(x):1);
y(1:delay_in_sampels)=x(1:delay_in_sampels);
a=1;
b=5;
for i =(delay_in_sampels+1):length(x)
sink=abs(sincurve(i));
delay=(delay_in_sampels+sink);
o=ceil(i-delay);
y(i)=(a*x(i)) + b*(x(o));
end
soundsc(y,fs)
What's wrong? cause it doesn't sound like a chorus effect imo.

4 Kommentare

MatlabPro
MatlabPro am 22 Nov. 2012
have you tried adding more delay?
Erik
Erik am 22 Nov. 2012
well ye, it sounds, then, like an echo. But if you look at my code, do you see anything that might be wrong? or does it seem to be right?
Aravinth Ananth
Aravinth Ananth am 5 Okt. 2020
can anyone tell the solution for this corus effect please....
Vincent Abraham
Vincent Abraham am 18 Nov. 2020
Were you able to resolve this error ?

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Aravinth Ananth
Aravinth Ananth am 2 Sep. 2020

0 Stimmen

hello cany any one give a correct code for chorus effect in math lab please?

Kategorien

Produkte

Gefragt:

am 22 Nov. 2012

Kommentiert:

am 18 Nov. 2020

Community Treasure Hunt

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

Start Hunting!

Translated by