Cockos Incorporated Forums ReaComp's Auto Makeup Gain is broken
 User Name Remember Me? Password
 Register Track Bugs/Feature Requests Search Today's Posts Mark Forums Read

 Thread Tools Display Modes
 07-09-2019, 06:24 AM #1 Lokasenna Human being with feelings     Join Date: Sep 2008 Location: Calgary, AB, Canada Posts: 6,238 ReaComp's Auto Makeup Gain is broken This may be "as intended", given that there are posts mentioning this issue from at least eight years ago, but the way auto makeup gain works is unexpected and unhelpful far more often than not. Current behavior: ReaComp looks at its threshold and ratio and applies enough gain to keep a 0db input signal at 0db after compression. I think. Example: Noise generator at -12db, ReaComp at 3:1, with the threshold at the edge of gain reduction. Problem: You can see that with the compressor just barely touching the input signal, it's boosting the output by 6.6db. That's not "making up" for anything. This behavior makes sense for a signal at 0db, but only for a signal at 0db. Since most signals are not running that hot, the makeup gain is incorrect. Consider tracks recorded at Ye Olde -18db Into The Interface - there's really no way to use auto makeup gain coherently on them. You could pull down the Wet slider to compensate, but it will only keep the signal where you want it for that exact combination of Threshold, Ratio, and Wet. The net effect is similar to what you get from a master limiter that just pushes the signal "up" until it starts hitting the compressor. Not quite the same though, as with the threshold at Infinity the signal only gets up to around -3db before the compressor starts hitting it. Expected behavior: The amount of makeup gain should (in the idealized, high school physics, "assuming zero friction and a spherical cow" sense) be equal to the average gain reduction. Sai'ke's explanation below made me realize that this isn't practical - any averaging function would in effect be a compressor on the compressor. However, the fixed reference point limits the usefulness of this feature to signals at the reference point. Dirt-simple solution: Add an offset slider to set the makeup gain's baseline. i.e. If my snare is peaking around -13db, let me set the base value to -13db and do the math with that as a starting point, applying 0db of makeup gain when the threshold is above it. Problem solved! Bonus points: It's backwards compatible! Yay! Last edited by Lokasenna; 07-10-2019 at 06:38 AM.
 07-09-2019, 03:09 PM #2 X-Raym Human being with feelings     Join Date: Apr 2013 Location: France Posts: 6,029 +1 ! If there is any unexpected behavior, then it need correction :P But there is a quicker dirty fix : just changing the label name ^^ __________________ My ReaScripts - Premium Scripts - X-Raym Theme - Stash Files - Feature Requests - Learn ReaScript - Website - Donation - ReaComics - Scripts Custom Dev Last edited by X-Raym; 07-10-2019 at 03:21 AM.
 07-10-2019, 01:11 AM #3 sai'ke Human being with feelings     Join Date: Aug 2009 Location: NL Posts: 660 Is what you call most common solution actually the most common solution? I imagine doing such a gain reduction estimate will introduce a second timescale (the window over which this estimate is made) which will make the compressor more unpredictable and therefore harder to tweak, not easier. I think makeup gain as it is defined now is how most papers I have read define it. Makeup so 0dB ends up at 0dB. Some products halve the gain required for this. The second option has my support tho. Would be nice to set the unity transform point. __________________ [Tracker Plugin: Thread|Github|Reapack] | [Routing Plugin: Thread|Reapack] | [Filther: Thread|Github|Reapack] | [More JSFX: Thread|Reapack]
07-10-2019, 06:36 AM   #4
Lokasenna
Human being with feelings

Join Date: Sep 2008
Location: Calgary, AB, Canada
Posts: 6,238

Quote:
 Originally Posted by sai'ke Is what you call most common solution actually the most common solution?
I just looked through all of the compressors I have on here and you're right - "auto makeup gain" is apparently understood by most to mean "with reference to 0db".

Quote:
 I think makeup gain as it is defined now is how most papers I have read define it. Makeup so 0dB ends up at 0dB. Some products halve the gain required for this.
Papers as in actual technical documents? I'm struggling to find anything on the topic with Google - lots of forum posts, etc.

Regardless, there's a significant disconnect between how pretty much everyone defines "makeup gain":

Quote:
 Originally Posted by Sweetwater After your signal undergoes the gain reduction process of compression you need some way to bring the average overall level back up so that the signal sits in the mix appropriately.
and "auto makeup gain" - the 0db reference shows up out of nowhere as a "well, we can't make this use a true average so fuck it" fallback.

(Editing the OP to note your response. Cheers)

 07-10-2019, 02:17 PM #5 JamesPeters Human being with feelings     Join Date: Aug 2011 Location: Near a big lake Posts: 2,664 Perhaps if ReaComp's release curve were more "normal", it would make the auto makeup gain option more "normal" (in terms of what people would expect from such a feature). Currently I find I'm using ReaComp with 6dB of reduction (or sometimes more), then compensating by adjusting the other controls; if I don't do this, I find ReaComp isn't very useful to me except for relatively finer/cleaner compression. With other compressors I'm usually able to get a similar result with around 3dB of reduction. Using more gain reduction (and higher ratio etc.) in ReaComp makes the auto makeup option very impractical to me since its effect is so exaggerated. If I were only reducing gain around 3dB and not using higher ratios, the auto makeup feature might be more practical. I made a feature request here, asking the devs to consider adding another release curve option. __________________ http://petersamplification.com Using REAPER for Linux Last edited by JamesPeters; 07-10-2019 at 02:27 PM.
 07-11-2019, 10:41 AM #6 vdubreeze Human being with feelings     Join Date: Jul 2011 Location: Brooklyn Posts: 1,762 I pretty much always take off auto gain makeup on anything. Never trusted what might to the gain structure if it's within a chain and I alter a parameter on it, and how that might affect what the next plugins get and respond to. A limiter at the end might go from knocking off 2db randomly to being 2 db short of hitting the threshold. Obviously, the compressor level can will change when a parameter is changed, but at least that's an assumed and predictable change with accompanying obvious task of compensating. I just never saw an advantage to having it engaged that wasn't overidden by the fact that it might not be correct, and may even be wildly wrong. __________________ The reason rain dances work is because they don't stop dancing until it rains.
 07-11-2019, 11:57 AM #7 JamesPeters Human being with feelings     Join Date: Aug 2011 Location: Near a big lake Posts: 2,664 I agree. I just figure maybe for the people who like using this kind of thing (since it's on other compressors), to make it work more "normally" it could be a matter of the release curve being unusual (requiring greater gain reduction/knee size/ratio to make a noticeable "compressor sound"). __________________ http://petersamplification.com Using REAPER for Linux

 Thread Tools Display Modes Linear Mode

 Posting Rules You may not post new threads You may not post replies You may not post attachments You may not edit your posts BB code is On Smilies are On [IMG] code is On HTML code is Off Forum Rules
 Forum Jump User Control Panel Private Messages Subscriptions Who's Online Search Forums Forums Home General Discussion     General Discussion (aka spam trap) REAPER Forums     REAPER General Discussion Forum     newbieland     REAPER Q&A, Tips, Tricks and Howto     Recording Technologies and Techniques     REAPER Compatibility     REAPER Color Themes and Icon Sets     MIDI Hardware, Control Surfaces, and OSC     REAPER Non-English Speaking User Forums         Forum de REAPER en français         Foro de REAPER en Español         Fórum do REAPER em português         Forum di REAPER in italiano         Deutschsprachiges REAPER Userforum         Pyccкоязычный фopyм REAPER     REAPER Bug Reports     REAPER Feature Requests     Dstruct's Casa De Nitpicks     REAPER for Live Use     REAPER for Video Editing/Mangling     REAPER for Ambisonic and 3D positional audio uses     ReaScript, JSFX, REAPER Plug-in Extensions, Developer Forum     REAPER for macOS X     REAPER for Linux     REAPER Pre-Release Discussion     REAPER Music/Collaboration Discussion     REAPER lounge NINJAM Discussion     NINJAM User Discussion     NINJAM Developer Discussion Other Software Discussion     WDL users forum     LICEcap Discussion     OSCII-bot forum     Old Cockos Products Forum

All times are GMT -7. The time now is 05:38 PM.

 -- Cockos ---- REAPER 5 ---- Reaper 3 ---- Reaper 2 ---- Reaper 1 Contact Us - Çockos Incorporated - Archive - Top