FX-dependent(!) dry level loss with bypassed mute-fx-in series

Ingo

Inspired
I have an issue that's been bugging me for a while. I have series-connected fx blocks with "tails", specifically, reverb, multi-delay and plex blocks; the bypass mode is "mute fx in", such that tails are not cut off.

Now I know that these blocks, when bypassed (and at 0 level and 100% in-gain), reduce the dry signal volume because the mix percentage still applies. So for a given mix percentage, I wanted to adjust their level such that the dry level is the same as for a shunt or, equivalently, the same block with "thru" bypass mode. (I tested this afternoon on the FM3, but recent notes from attempts on the AxeFxIII show the same thing there.)

Ok, dry/incoming = 1 - mix/100%, and those are field-like quantities, so dry/incoming = 20 * log10(1-mix/100%) dB is the dry "loss", and I should compensate by turning level up by -20 * log10(1-mix/100%) dB. For a 50% mix, this gives the familiar ~6dB.

However:
  1. When I try this compensation I notice a difference between the above fx types: For the PLX, it works fine, for the MTD, it's too much (rather, ~3dB seems correct), and for REV, it seems far too much (sth like 1.5dB seems to work). This I don't understand at all --- the algorithm should not matter at all when bypassed if the mix law is the same (the DLY block is sth else, all the above blocks do "standard" mixing AFAIK).
  2. These inconsistencies also appear in more extreme mixes: At 90%, I would expect 20dB compensation necessary. That, again, works fine for the PLX, but MTD needs ~17dB and REV ~15dB.

Can anybody explain this? I must be missing something fundamental (obvious or not). Also, it seems that the difference in the compensation level is (roughly) constant, ie, REV always needs 4.5..5dB less compensation and MTD ~3dB less compensation, but why would that be the case? (Moreover, it can't be just like that for all mixes, because the compensation itself is less than 3dB for mix<30%.)

I thought about some splitting/stereo stuff going on, but the fx algos themselves should play no role, and all the arguments should apply to each stereo channel separately, also there is no summing involved (that I can see).

Any insights appreciated! Thanks.
 
Last edited:
I stopped reading after the 2nd paragraph.

The Mix of a bypassed block should have no affect the signal as far as I know.

Someone feel free to correct me if I'm wrong or I'm missing something, but I don't think I am.
 
have you tried another Bypass type? i think Mute FX In/Out are specifically for parallel. it's been a while since i tried them all, but maybe another one is better for Series?
 
have you tried another Bypass type? i think Mute FX In/Out are specifically for parallel.
I have, but to my understanding, "mute fx in" is specifically for "tailing" effects in series, also according to the blocks manual.
 
They use different mix laws. Reverb & MTD should be the same though, -3 dB at 50% mix which seems to be the case here on a III.
Do you have any source for the mix laws being different, and what they are? I was only aware of the DLY block in that respect. Anyway, the PLX seems "correct" at -6dB at 50% mix. I will re-check REV and MTD on the Axe in the coming days.
 
Do you have any source for the mix laws being different, and what they are?
I just checked how mix controls affected levels. The FAS Blocks Guide only mentions that "a few blocks" use a constant-power i.e. -3 dB mix law.
 
If you want the dry to stay at a unity gain, running them in parallel is exactly what you want.
I tried to make it clear in the original post (but probably failed) that I am not looking for different approaches to always have levels the way I want them --- I wanted to understand the behavior I described.
 
Okay, for anyone interested, some results to wrap this up..

  1. I should have started from hard facts exclusively, not aural comparison. All the means are there in the units themselves to get mix law data easily: sine-wave synth as source, bypassed test block with mute fx in mode, read off level reduction at hardware display or output block digital levels.
  2. As stated before, the PLX block follows the linear mix law perfectly, see above, for mix x (0..1), the drop can be compensated by -20*log10(1-x) dB.
  3. The MTD and REV blocks do, indeed, follow the same (non-linear) mix law (the block manual's "constant power algorithm"), here's where the aural comparison led me astray -- thanks @Bakerman, for reminding me of the phrase in the manual, and correcting my statement about the two fxs being different.
  4. I tried to match the mix law myself but only considered the simplistic "square-root" behavior which does not reproduce the measured level reduction. Without any DSP background, I had to search and look up some things instead: A good and accessible read is, eg, this paper. Turns out that the constant-power algorithm in the MTD and REV blocks uses the "tan" law as it applies to completely uncorrelated dry/wet signals.
    That means the necessary level compensation at mix x (0..1) is -20*log10(cos(pi/2*x)). This has the 3dB reduction at 50% mix (just like the square root law), but behaves quite differently for smaller or larger ratios.
Thanks for all responses.
 
I had made this chart a while ago:

https://forum.fractalaudio.com/thre...output-so-different-great.160239/post-1918680

Anyway, especially now that we have the kill dry switch, the easiest way to have a consistent dry level and not go thru that headache is to just place them all in parallel.
Did not find this in my forum searches, thanks! It seems that quite some blocks use the constant-power algorithm then, that's good to know.

Regarding the parallel placement, I find that this can become annoying especially if you want the chained fx: if you want reverberated multitap delays, eg, you would need to put two of those shunt/fx parallel chains in series. Also, at least on the FM3, adding shunts without any need is a bit too cavalier an attitude towards CPU use IMHO. ;)

For me, the kill-dry switch was actually the motivation to look closely at the dry-level reduction again: If you compensate the level as described above, you can use the exact same channel (eg, from your library) both in series and in parallel, just by turning kill-dry on for the latter! Levels and mix should then be the same in both routings.
 
Back
Top Bottom