Design Dilemma

Mr Oktalski (my graphic designer) is a very smart guy. So I tend to take it very seriously when he makes an observation.

He’s been working his way through the controls, of which there are many, and posed the question: which hardware compressors will this model well (i.e. indistinguishably from the hardware). Immediately I can list a few classics that have influenced the DSP design that I can foresee no problems with emulating. Fun list of presets.

But this wasn’t the focus.

The original idea for this compressor was to create “the ultimate compressor” – something you could insert on any track, and have the flexibility to always get the job done without resort to another compressor.

As you’re aware, most compressors have about five controls; maybe a sidechain EQ, and occasionally a “processing mode” option, or a few other character tweaks. This compressor has tonnes of extra controls to allow you to configure it to your exact taste. You know- changing the effect it has on transients, that kind of thing.

I think you all largely know where I come from with dynamics; you probably remember I did Forte; I was, shall we say, “heavily involved in” the design of the Liquid stuff; I built TBK3; and brought the Sonalksis 315 from Mk1 to Mk2. All fairly modern designs.

So now I’m left with a dilemma which is this:
I hadn’t originally intended this compressor to turn into a replacement for all the modelling compressors out there, but Krzys pointed out that with all this technology, it might be a wasted opportunity not to do that.
Which is a design dilemma, because right now, it’s a fucking fantastic unit for a mixing/tracking/mastering engineer who wants a fantastic compressor/limiter/expander/gate whatever for a track… but the focus is very much on getting the job done, rather than being able to swap in SPECIFIC bits of kit.

Opto characteristics; check. Feedback behaviour (which can actually be modelled surprisingly well with a feed-forward design, the maths reveals); check. All kinds of oddities that one finds in an analogue model (knee types, over-easy, unusual transient shaping, bandwidth limits, sidechain biases, weird hystheretic behaviour, etc); check.
Certainly you’d need to know which controls to tweak to get these behaviours to come out, and that’s very much my job in the preset design stage… but perhaps a list of specific pieces of kit would make for a more useful preset list than task-focussed presets?

… and if I do go down that route, how far do I go? I can add in special modes for modelling things like overdamped feedback designs (some very obscure bits of kit ‘wobble’ when they attack. It’s weird but fun), really odd release behaviour (autorelease catches a lot of this in practice, but I could go deep into it).

EQuality was something of a free ride for me in terms of replacing hardware, because (neglecting distortion, which is fairly easy with EQs that aren’t being driven absurdly hard) all hardware EQs basically follow the same rules. In fact the maths forces them to, which is why you can get EQuality to sound like any random EQ you fancy.

Compressors aren’t so well-defined, nor so constrained mathematically.

So now I’m left wondering where the line is. Do people want another (better) Liquid Compressor? Or do people want a fast, efficient workflow tool, that gives them “just enough” control to make sure they can always get the job done?

I can add options all day long; I really can. I kinda like it even. But I’m painfully aware that every control I add makes someone’s life a little bit worse, because there’s more clutter that has to be on screen. Even with the smartest UI design (which Krzys will do, because he’s an evil genius) if the controls are there, you can’t escape them.

Advice please people 🙂

TL;DR: New compressor: Every compressor ever, or every problem solved?

The compressor…

…is coming along very nicely.

Before I start rambling about that, here’s the updates from me: TL;DR: I went to Ibiza, made some plugins, came back, moved to Brighton (UK), got v1.10 of EQuality out, and hid out and did a lot of work on the compressor.

So, let’s talk about dynamics. Today, the compressor got nicknamed “The Dynamics Laboratory”. Let me explain why…

But first things first, it’s a single-band compressor. There’s plenty of time for multi-band and such, but this is not that time.
I’m entirely sure you’ll find this plugin to be enough of an improvement on whatever compressors you’re using that you’ll be very excited indeed. Reasons why it’s cool:

-) There’s a 3-band sidechain EQ, and it allows you to mix noise in to the sidechain signal. It also supports external sidechains, naturally.
-) There’s a graph, that helps you see what you’re doing, without needing to learn how to read it or anything, it just makes actual sense (that took three months to figure out how to build. *gasp*).
-) There’s a HPF and LPF in the signal path, plus a LPF on the dry feed, and a wet/dry ratio (so you can mix uncompressed bass in, or use it for parallel compression).
-) The sidechain mixes are completely configurable. If you want the Mid to compress the Side, you go right ahead. I approve. That’s a great idea.
-) There’s a built-in gate/expander. Because you deserve one. And bringing up the noise floor with inverse expansion is just great.
-) The controls don’t have needlessly restricted ranges. If you want to make it sound distorted, you can. If you want to make it smooth as silk, no problem.
-) You can configure the compressor topology; you can configure the character of the compressor entirely. With presets too, if you like.
-) You can reshape the dynamics curves.

I’m just going to let that one sit there for a bit.

I mean, it’s not like this compressor allows you to fine-tune how the compressor reshapes your transients.

OH WAIT, it is.

Also, did anyone spot the point before? About changing the compressor’s character? Wonder if that’s as flexible as something like Liquid Mix… Oh, wait, it’s MORE flexible than Liquid Mix? It contains a full taxonomy of compressor topologies and you can just dial your way through? (10 points if you spotted that tweet) So, I could, say, set up a compressor… and then see how a few different bits of kit would sound doing the same job? And THEN fine-tune the transient shaping?

-) Two different styles of compressor knee.
-) Hystheresis AND Hold, for maximal smoothness.
-) Analogue and Digital VCA smoothing models; vintage or superclean.

CHANGE THE TRANSIENT SHAPES??? REALLY?

Ok, so, I’m getting a bit excited about it. You’ll have to forgive me, it’s just that I’ve never heard a compressor that allows you to do that before, and it’s really exciting. It’s like a whole new world of dynamics.

We’re working on the UI at the moment; the idea is that you open it up, and there’s the standard controls, and a big graph.
If you want to go deeper, you can expand the plugin window to view a few extra controls (…currently 73…).
We’re still working on laying things out to be shiny and quick, but you know we will. 🙂

Lots of late nights, but the DSP is basically there now. There will probably be a handful of tweaks (like coalescing the s/c listen and channel-solo controls, that kinda stuff) yet to come, and if anyone suggests anything life-changing, it’ll go in.
I’m hoping to get it to beta this month, which isn’t /impossible/. Will post screenshots…

So, readers, this is going to be the ultimate single-band mixing/tracking compressor. I’ve listed a few of the features… what else does it need…? GO!

We’re going to Ibiza…

Something very interesting is about to happen.

A very exciting new project is about to start, which will result in some delicious audio goodness.

I suspect most of you remember the TBKs from my Sonalksis days. I’ve had the chance to spend some time with a good friend with whom the TBKs were designed (not to mention most of my Focusrite projects). As a result, we’ve come up with an evil plan.

I hope it’s not too bold of me to make the claim that I’m fairly reknowned for listening to what real users want; we’re taking this to it’s logical conclusion: bespoke plugins.

We’ll be in Ibiza for two weeks, 11th to 24th August, to meet up with producers. If you’re out there, and would like to arrange a meeting (read: smoke cigars on a sun lounger by the pool in the gorgeous Ibizan weather), drop me a line, Dave at dmgaudio dot com, as always.

I’ll be posting about our activities on the white isle on and off (as internet is available). I have a cache of great DSP that’s aching to make itself useful 😉

… back to the island.

Dave.

v1.09

Hi all.

I’ve been fixing and tweaking again. v1.09 (public beta) available here:
http://dmgaudio.com/dl/EQuality%20v1.09/

Changelog:

– Fix AU Validation
– Improve RTAS UI handling
– Improve display of textboxes for RTAS/Mac
– Fix AudioSuite handling
– Fix processing of long offline blocks
– Fix special peaks bug
– Fix 64bit UI handling
– Fix RTAS samplerate issue
– Sliders have textboxes for display/entry
– VST2.4 mono version, for convenience
– Fix range=0 bug
– Double-click sliders/knobs to reset to default.
– Button added to Setup to save state as default.
– Mousewheel adjusts Q for all bands
– Autolisten uses q=12 pref.
– Alt-dblclick on the graph resets a band to default.
– Alt-drag Range/Shift will not change value without affecting bands.

Feedback please! If there are any features I’ve missed, let me know now and I’ll get on it.

Cheers,

Dave.

EQuality RTAS fixes

Woohoo! Spent this afternoon straightening out VSTGUI_360 so the RTAS version works really smooth on mac 🙂
Fixed a bunch of bugs. 🙂
I’ll get a public beta ready this week; want to roll a few other updates in 😉
Oh, also the 64bit AU validates perfectly now (I have that if you need it with urgency, just mail me; or wait for 1.09).

Back later 😉

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 🙂

Dave.