Index-Selectable Limiter Block
I am currently using the Ext Detector Standard RMS Limiter block (look-ahead limiter).
Is there a way to make the limiter parameters indexed based on an input to select from four different limiter options? Or do I need to have a signal mux with four different Limiter blocks?
Hi:
what processor are you using?
I believe what you are trying to do is possible, just need to make sure you are using the processor that allows for that.
Please comment.
Miguel
ADAU1466. I do have enough cycles to run 4 different limiter blocks, but it doesn't seem like the elegant solution..
Hello Evan,
I think you can use the parameter update cell. Once you compile it then a list of the variables are populated and you can choose which parameters to write to. Use the capture window to see what is being written when you change the values in the compressor. Keep in mind that there are a lot of parameters in a compressor and sometimes SigmaStudoi will write more than it needs to. So you can drive the parameter update cells with several lookup tables to change multiple parameters at one time.
Have a look at this program. It does not do what you want to do but it is a start. I may be able to help more tomorrow or others on the forum might chime in.
Dave T
Dave,
Thanks very much. I think for the moment, I'll just stick with 4 separate Limiter blocks for simpler development, and if I run into a DSP resource crunch, will re-implement using Parameter Update cells + Lookup Tables.
Thanks,
Evan
I am trying to implement this method using the Parameter Update cell, in order to alter the RMS Limiter's Threshold slider bar. But it seems that adjusting the Threshold value just writes 420 bytes for new limiter points to the DSP. How can I store various sets of the limiter "points" and update using the parameter update cell, which seems only to accept one parameter value, instead of a parameter array?
Hello Evan,
This is a very good question. You are right that the threshold writes new compressor curve points when you change the threshold. It has to do that and there is no way to send that many variables using the parameter update. Well, no sane way of doing it. We do not have an index selectable version of a compressor because it is not something that is often needed.
So the workaround is to use an external sidechain input version of the compressor you are using. The sidechain input will still have all the attack/hold/decay settings and will have the basic compressor curve you like but it gives you the ability to hit it harder or softer. That is pretty much what changing the threshold does, it moves the curve points against a certain input level. What I am suggesting is to keep the curve points static and move the input level instead. It will work the same and all you have to do is write a volume change and it can even be slewed!
So split the audio input to go directly to the compressor audio inputs, then sum all the channels together using a merger cell and then run that into a volume control and then into the external sidechain input. Adjusting this external volume control will change the threshold.
Let me know if you need an example.
Dave T
Oh! I should also mention that whatever you are sending to the parameter control cell might be able to directly control a volume control with an external input. You may need to massage the data some but it might be a great way to control the threshold from something else in your program.
Dave T
Dave,
If you could provide an example, that would definitely be helpful.
Thanks,
Evan
Compressor Threshold Control from the sidechain.zip
This project uses an adder instead of the Signal Merger. This means that it will add 6dB which might be useful for you. This project is for an ADAU1701 so there will be some small differences but it shows that you can use an externally controlled volume control for the threshold. Just keep in mind that the AUXADC is different on the 1701, you have to shift the data over on the Sigma300 because the AUXADC is right justified data.
ADAU1701 AUXADC Compressor Sidechain Control.zip
Dave T
Please log in to reply.