Page 1 of 1

Limiter Values

Posted: Sat Nov 05, 2022 12:05 pm
by UrbanCyborg
What are y'all using for parameters for the Limiter function VMD supplies? Particularly dB values for soft and hard limiting. I've tried putting in common values used in studio practice, but I'm not getting the results I expect. Any help appreciated.

Reid

Re: Limiter Values

Posted: Sat Nov 05, 2022 7:01 pm
by utdgrant
Are you talking about the Limiter class?

SetThresholdDecibels (double dB) has the range -infinity to 0.0.
SetThresholdPercent (double percent) has the range 0.0 to 100.0.

Voltage-Developer-Kit-2.5.5/Documentation/JavaDocs/voltage/processors/Limiter.html

Edit to add: There's no SetRatio method, so I'm guessing you get hard limiting in all cases.

Re: Limiter Values

Posted: Sun Nov 06, 2022 9:23 am
by UrbanCyborg
Well, I suppose that's part of the problem. There's a way to query the gain, but not one to set it, so I was thinking it must be inherent in the values you can set. But I'm not sure it really is. Writing a test case now. Thanks.

Reid

Re: Limiter Values

Posted: Mon Nov 07, 2022 10:53 am
by UrbanCyborg
Okay, my tests show that the only thing that affects the gain is the Threshold setting. Lower the threshold, and the gain goes up. At -0 dB, it's 1.0. What I've noted regarding the attack and delay times is that they definitely affect phase, so there's some kind of frequency-dependent processing going on, but I'm unable to detect any obvious change in the waveform over fairly large changes in timing. So, I would say that you're right that the function is probably doing a fixed limit, although it doesn't appear to be that hard a one, since the waveform basically just rescales to stay within +/- 5 V. Now, most compressors I'm aware of do their tricks by changing gain on the fly; this one doesn't seem to be doing that. Bug, or intended behavior? It's not well-documented, and in fact, the limiter module in the SDK sample code doesn't use it, but relies on a separate file that just hard-clips.

Reid

Re: Limiter Values

Posted: Mon Nov 07, 2022 11:53 am
by ColinP
Hi Reid,

You have more than sufficient knowledge to code your own limiter rather than waste time trying to get the stock VM DSP library stuff to do anything useful.

Although it sounds like you have come to this conclusion already so don't really need me to point it out. :D

Re: Limiter Values

Posted: Mon Nov 07, 2022 2:15 pm
by UrbanCyborg
Yeah, I just didn't want to if I didn't have to, since I'm not writing a compressor module; I just want to have the capability as a minor feature in a different module. Compressor code can get very messy if you get serious about it; the variable gain amp at the heart of it is a very minor part of the beast. Predictive code of some sort is quite a bit messier. I guess if I have to write one, I'll also release it as a module. Odd that there aren't very many compressor modules available in VM.

Reid