Talking about jumping from and to zero, I can see 2 cases:
CASE 1: All EQs jump to 0
We can use memset(...) here, the way SampleUtil::copyWithGain(...) uses when `gain = 0'.
CASE 2: Not all EQs are 0
In this case the calling thread has to complete the loop (for non zero EQs). So I guess, we can let the other EQ (which are set to 0) ramp down to zero because this will help in keeping code more readable is not a big penalty in terms of performance.
Also, I should make this change for other 2 EQs (even though we dont have issue there ?) as well for the sake of code consistency.
Thanks for review Daniel!
Talking about jumping from and to zero, I can see 2 cases: :copyWithGain( ...) uses when `gain = 0'.
CASE 1: All EQs jump to 0
We can use memset(...) here, the way SampleUtil:
CASE 2: Not all EQs are 0
In this case the calling thread has to complete the loop (for non zero EQs). So I guess, we can let the other EQ (which are set to 0) ramp down to zero because this will help in keeping code more readable is not a big penalty in terms of performance.
Also, I should make this change for other 2 EQs (even though we dont have issue there ?) as well for the sake of code consistency.
Shall I go ahead with above changes ?