Dave, can you tell us a little about how you got into music, and your professional career as an audio effects developer so far?
Started writing trackers as a child, then wrote some code to allow me to DJ with trackers. By 14 I was writing commercial software. Had some great teachers and lecturers who helped me a lot. Did my final-year project with Focusrite. Won the project prize. Spent 4.5 years at Focusrite (I was employee 12 or 13) to add DSP to the company, during which time we acquired Novation, and grew quite a lot. We made a lot of money from audio interfaces, so that kinda took over, and I wanted to get back to the DSP (at Focusrite I did Forte suite, helped with Liquid Channel/Mix, Saffire suite, plus other non DSP projects). Left for Sonalksis, built all their shipping products (except CQ1 and DQ1), although I’d built tbk1 years before and they’d been selling it. Was fun but chaotic. Left to go freelance so I could start my own outfit, during which time I worked with Neyrinck, TAC System, Focusrite, Novation, Studio Devil, FXpansion, Brainworx/Plugin Alliance, etc. Then started dmgaudio. And here we are now.
What was your very first encounter building an audio dynamics processor?
Haha! I must have been twelve! Who knows?! I probably used a naive AR stage and it probably sounded great for this one signal I was attempting to affect!
To that time, what was the design challenge?
Oh. When I was twelve I hadn’t developed a critical listening skill, nor did I have calibrated monitoring. In other words, it was a crap shoot. But I was a kid and I was having fun!
What changes have you seen in dynamic processor design?
I’ve always had a foot in both analogue and digital, so I’ll start with analogue. The history of analogue design has essentially been one of striving for precision and control. Somewhere around the 70s, the “spec” for a compressor (i.e. threshold, ratio, attack, release, makeup) was agreed upon as a good set of controls, and you can see the history of people trying different gain-control elements in order to reduce distortion and get more precision with the gain reduction. It’s in a sense arbitrary, but the textbook compressor has a certain simplicity to its use. Before the 5-control compressor interface all people had were valves, so you got vari-mu designs and odd circuits like the gates sta-level. As soon as transistors came along, VCAs and optos became options, and it all culminates in the very straightforward designs of people like dbx. Even then, some designers knew that more esoteric topologies allowed for “smoother” or “characterful” responses, and a lot of those were very successful, and sought after even today.
In the digital domain, that analogue knowledge didn’t make it through for a long time, so essentially a lot of the first compressors (with a few notable exceptions) were modelling the “textbook” style, like dbxs, which will get the job done, but they’re a lot less fun, and sometimes they don’t sound as great. Eventually you started to see people actually circuit modelling older analogue designs, and that’s when the analogue design wisdom started to transfer to software.
Nowadays, there are phenomenally precise circuit models around!
In terms of how people go about designing a processor, the early days were about experimentation to a fair degree. Now, a few topologies have emerged, hence we have an idea of “styles” of compression. Analogue designers tend to design either for high-precision or for vibe. A lot of digital designers seem to stick very closely to modelling old circuits, which has a certain appeal. At the same time, it’s worth noting that in digital-land, we can go a lot further in terms of flexibility without needing to compromise on how things sound.
Working on the Liquid technology, we encountered so many unique responses and styles of compression it was an education! That’s even though I was already surrounded by some of the most talented analogue dynamics designers in the business! This led to my research into general structures that govern dynamic processing, and that led after many years to Compassion.
What was your approach when designing Compassion as far as you want to talk in public about it, of course?
Compassion was the culmination of a lot of research into the topologies and design commonalities/differences between the myriad dynamics processors out there. The research started at Focusrite with the Liquid products. The big question was how different topologies generate different attack/release shapes. In a compressor there are many elements and nonlinearities that can be going on to affect the shape of the gain reduction signal – some you see in old designs, and some you never do! So the starting point for Compassion was a generalised mathematical model that allowed the widest possible breadth of dynamic control.
With a generalised model of audio dynamics processors, you can try some strange things – for instance, making the topology continuous (that was fun), so you can blend the curve shapes, or allowing setting values way outside the limits of what could be feasibly achieved in a circuit, to see how it sounds!
In terms of the controls, I tried to keep it as traditional as possible. I’ve seen interfaces that allow free-hand draw of dynamics curves, but I’ve not seen them used as widely as a Ratio knob. So the controls allow creating a dynamic curve that follows the traditional analogue control paradigm – ratio, threshold, knee, ceiling, floor, etc… but with a few extras naturally to allow you to go a little further than the circuit would.
Once there was a generalised engine for dynamics in place, and the controls allowed for to honing in on any particular sound (or even dive into really tweaky dynamic sculpting), it seemed natural to add a few of the typical digital niceties like clip-limiting (which is really hard to do analogue), and the transient shaper came from an old design I had lying around, which got some love.
Ultimately there’s two schools of philosophy regarding designing units. There’s one school that says that each unit should be unique, and the user should cycle through units until they find one that solves their current problem. I have an issue with this line, because too often I find I’m not completely satisfied with that result. So the other school of philosophy, which is where I come from, would hold that a unit should be designed to ensure that the user can solve their task at hand.
There’s a certain charm to the idea that once upon a time, a designer would design their unit with a million controls and boil them down to just two knobs on the front panel, concluding that it was perfect, since there was nothing more to take away. But that isn’t the reality – two knobs doesn’t give you a lot of control for solving common problems, and the reason it has two knobs is typically because if you started adjusting the other parameters, it wouldn’t sound great!
It boils down to what you consider good design, but for me, functionality must always supervene over form.
Let’s look into the crystal ball of dynamic processing: Can we expect something ground-breaking new in the not so far future?
Well, I have a suspicion that there might be ways to improve control over compression. The basic four knob control schema is straightforward, but over the course of history, there have been many well-loved units which were a little different. It’s something I’m thinking about, and if I find any new truths, you can be certain I’ll bring them to everyone in the form of a new processor!