Skip to content

fix echo effect reducing volume of input#1166

Merged
daschuer merged 2 commits intomixxxdj:masterfrom
Be-ing:fix_echo_volume
Apr 5, 2017
Merged

fix echo effect reducing volume of input#1166
daschuer merged 2 commits intomixxxdj:masterfrom
Be-ing:fix_echo_volume

Conversation

@Be-ing
Copy link
Copy Markdown
Contributor

@Be-ing Be-ing commented Feb 3, 2017

The input samples were being divided by 2.0 along with the echoed signal. This changes it so only the echoed signal is divided by 2.0. Now, with the send parameter all the way down, toggling the effect enable switch does not alter the sound at all. If the echoed signal is not attenuated, it can clip somewhat easily.

@Be-ing Be-ing mentioned this pull request Feb 6, 2017
@timrae
Copy link
Copy Markdown
Contributor

timrae commented Feb 6, 2017

Now it gets louder when you press the enable switch :-/

@Be-ing
Copy link
Copy Markdown
Contributor Author

Be-ing commented Feb 6, 2017

With the send knob all the way down? If the send knob is not all the way down, it should get louder when enabled.

@timrae
Copy link
Copy Markdown
Contributor

timrae commented Feb 7, 2017 via email

@timrae
Copy link
Copy Markdown
Contributor

timrae commented Feb 7, 2017 via email

@Be-ing
Copy link
Copy Markdown
Contributor Author

Be-ing commented Feb 7, 2017

I tested this again and it sounds fine to me. What you are expecting to happen @timrae? If the send knob is up a little bit, it gets a little louder when enabled, as I expect. When the send knob is all the way down, there is no change at all when enabled. Anyone else care to test?

@daschuer
Copy link
Copy Markdown
Member

Yes, the result is better. However, this changes the clipping behavior.

Before
(In + clipped(delay)) / 2 -> not clipping if input is not clipping

Now
In + clipped(delay) / 2 -> clipping (going to red) can still happen

This is basically the same as mixing two tracks. So it should be not an issue isn't it?
Or should we add an other clipper to the output, like we do in the phaser?

I think we can improve the sound by using a tanh clipper that models the sound of a clipped transistor circuit. A bit faster tanh approx. is used in the moog filter:

inline float tanh_approx(float input) {

@Be-ing
Copy link
Copy Markdown
Contributor Author

Be-ing commented Mar 9, 2017

This is basically the same as mixing two tracks. So it should be not an issue isn't it?

Kinda. It's not quite the same. It's like mixing in another track that is ~6 dB quieter. So yes, clipping is still possible and it is up to the user to be mindful of that. I tried not dividing the echoed signal by 2, but IMO it was too easy to clip that way. I think this PR should be merged as is. Afterwards, if you have ideas for improving the effect further, please open a new PR.

@daschuer
Copy link
Copy Markdown
Member

daschuer commented Apr 5, 2017

LGTM Thank you.

@daschuer daschuer merged commit 7919453 into mixxxdj:master Apr 5, 2017
@Be-ing Be-ing deleted the fix_echo_volume branch April 7, 2017 02:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants