Dynamics samples… DSP is coming together :D




Ah, joys. Dynamics.

So, yes, I coded up the DSP today. Still early days; the sidechain filtering is missing, I’ve not started on stereo/m-s stuff, nor parallel compression, but the core is in place. YAY!

First thing to do is ensure that the full range is available; that I can achieve optimal nastiness with the engine I have. Making it sound good is easy if you’re sure you have all the right controls (and I am). So, here’s the nasty. 🙂

Same loop, four times over, then some processing. See if you can figure out what’s going on. As a clue, there is NO makeup gain applied to any of these clips… 😉

Back to the blog.

I always do well when I take a leaf out of Chris Randall’s book. As soon as EQuality launched and people started talking about it, I developed an unusual blogophobia that’s been inhibiting me from blogging lest I say something that embarrasses myself and inadvertently makes the product look silly. Dumb. This is my blog, not my official PR channel 😉 So, let’s get back to the usual nerdiness without abatement.

I’m making a compressor.

No, that’s clearly a lie. I’m making the ultimate dynamics processor. It’s different.

Here’s what goes on in my head, basically:

I need a <insert processor here> for this mix. Hmm.. here’s the one I usually use, but actually it’d be really neat if it could <insert missing feature here>. *looks around for a bit, finds some plugs, plays around a bit* Well, this one is halfway there, but it lacks that feature, and really I could have a lot more control over this aspect of the functionality. Repeat the above about two or three hundred times for that type of processor. Hmm… I should really build something so this task isn’t such a pain in the ass… wonder why this hasn’t been done properly yet. Let’s take care of that.

And that’s how project specs are born. From a combination of necessity, and some technical insight into how things ought to work. That was very much the drive behind EQuality, and it’s the drive behind the new dynamics plug.

This is how I make problems for myself. This evening I’ve completed the core dynamics-curve code. Not all the time-domain stuff (like attack and release), just the “how much gain reduction should I be applying right now” stuff. If this was a compressor, there’d just be Threshold and Ratio. But it’s not, and there isn’t. There are eleven controls, including controls that allow you to expand, gate, upwards expand, inverse compress, and dial in a whole stack of analogue characteristics. There are two different kinds of soft-knee (for VERY good reason). The question is always: why isn’t there just one plugin that lets me get the job done, why do I need fifteen? So, I’m working around that.
The timedomain stuff has 17 controls on spec right now, and this is all excluding the obvious, like 12 controls to EQ and noise-bias your sidechain (a number that may well grow), and 11 controls for the actual signal path, so you can parallel-compress (against an optionally filtered version of the dry signal…?), and emulate the rolloff from analogue gear without instancing another plugin. All EQuality EQ too. That was handy to have lying around… 😉

The major problem ahead will be designing an interface that makes all of this FAST to control. I’ve an idea that the interface needs to be structured to hide away detail until you need it. Perhaps subwindows, or perhaps sections that slide over the graphs? Nice big colourful graph should be no surprise from me by now…

I’m currently on an island off the south coast of the UK (the Isle of Wight). It’s accessible by boat, and it’s quiet and really good to be near the sea. I’ve been nursing my girlfriend after she had an operation (she’s local here, and recovering really well), and being here has been a neat benefit. EQuality was dreamed up on a deck-chair, staring out at sea. There’s definitely something positive about the tranquility of the sea, or even just the sea air. I’ll have to go back to the mainland before too long, which will be a shame, but I’ll find an excuse to get back down here again before long.

Modelling is fun, eh? I’ve learned a lot from studying modelling. That’s all coming to bear for the dynamics module, which should compete head-on with the Liquid Mix compressor section and win (in terms of flexibility). What makes the Liquid stuff good though, is that it offers a few controls, and hides the complexity underneath. I want to do that too… but I also want to put control in the hands of those of us who have a use for an 1176 with a decoupled A-R section… and give you control over the SHAPE of the attack and release curves (which I don’t think has been done before…?), so you can really CRAFT your dynamics and transients with it. This excites me, in a nerdy way. 😀

Over the next weeks I’ll post some audio clips to demonstrate some of the fine details, but do please shout at me with ideas for the dynamics plug 🙂