-
-
Notifications
You must be signed in to change notification settings - Fork 3
Description
The dry/wet knob on the "Impulse Responses Mono" plugin is not working as expected. I'd like to use the plugin with impulse responses of guitar speakers. Therefore I need to be able to fully disable the amp signal and to only use the processed wet signal. However, if I set the wet level to 100 % I get doubling effects.
Here are some further steps to reproduce that there's in fact a problem:
- Set the "Dry" knob to -inf dbFS.
- Set the "Dry/Wet" knob to 0%, i.e. fully dry.
Expected result: Nothing can be heard.
Actual result: the dry signal can still be heard.
I think this can the traced to the following lines of code: https://github.com/lsp-plugins/lsp-plugins-impulse-responses/blob/af5066bf43ae585f8d459a41d7b0fde34ca84e88/src/main/plug/impulse_responses.cpp#L475-L476
The current code looks as follows:
c->fDryGain = (dry * drywet + 1.0f - drywet) * fGain;
c->fWetGain = wet * drywet * fGain;
It needs to be adjusted as follows to correctly interpolate between dry and wet:
c->fDryGain = (dry * (1.0f - drywet)) * fGain;
c->fWetGain = wet * drywet * fGain;