How can i add echo to a signal

5 次查看(过去 30 天)
Ijeoma Madu
Ijeoma Madu 2012-12-1
I want to add echo to a signal
load handel
how do i add echo to this

回答(3 个)

Vieniava
Vieniava 2012-12-1
load handel;
echo_delay = 0.5; % in seconds
echo_delay_s = round(echo_delay*Fs); % delay in samples
echo_gain = 0.1; % to control a linear gain of an echo
y_echoed = y + [zeros(echo_delay_s-1, 1); y(echo_delay_s:end)];
  3 个评论
Perturabo
Perturabo 2019-2-8
I have to make an echo generator too but the instructions say nothing about the phase difference; Just input, Fs,delay and gain. When i test it on various inputs it just says
Variable output must be of size [10820 1]. It is currently of size [73113 1]. Check where the variable is assigned a value
When using the above function.
Priyamvada Shankar
Priyamvada Shankar 2019-3-24
@Perturabo please tell me, if you get the correct code.. I'm too stuck in this situation..so please help

请先登录,再进行评论。


Vieniava
Vieniava 2012-12-2
编辑:Vieniava 2012-12-2
For example: to add an echo after 1s (with amplitude=0.1, phase=pi/3.5) and echo after 1.5 seconds (with a=0.5 and phase=1.2*pi) you can use the following code:
echo_vector=[1 zeros(1,Fs) ...
0.1*exp(1i*pi/3.5) zeros(1,1.5*Fs) ...
0.5*exp(1i*1.2*pi) ];
yecho=real(conv(y,echo_vector);
Using echo_vector that way you have full control of an echo creation.

Julia Esposito
Julia Esposito 2017-11-30
How can I load an audio file and use a GUI to make it echo?

类别

Help CenterFile Exchange 中查找有关 Signal Processing Toolbox 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by