Generating an Echo for an Audio Signal using Convolution

[y,Fs] = audioread('Test1.wav');
delay=0.8*Fs; %Delay
attenuation_factor=0.4;
h=zeros(1,delay);%Impulse
h(delay)=attenuation_factor; %Impulse at delay
z=conv(y,h); %Convolution
sound(z,Fs)
The produced sound doesn't include the desired echo, and not sure why so. I would apprechiate the help

 Accepted Answer

Prakash S R
Prakash S R on 10 May 2022
Edited: Prakash S R on 10 May 2022
z is simply the delayed input (echo). You forgot to add echo to the input! You are listening to the echo component only, not sound + echo

More Answers (1)

[y,Fs] = audioread('Test1.wav');
delay=0.8*Fs; %Delay
attenuation_factor=0.4;
h=zeros(1,delay);%Impulse
h(delay)=attenuation_factor; %Impulse at delay
z=conv(y,h); %Convolution
sound(z,Fs)

Categories

Find more on Audio Processing Algorithm Design in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!