You are here

Page 2: Softube: Modelling Hardware In Software

Oscar Öberg, Arvid Rosén & Niklas Odelholm By Sam Inglis
Published June 2019

Fine Tuning

A 'hole in one' where a perfect model is achieved by following the schematics and initial measurements is rare. More often than not, the schematic only tells part of the story, and the code requires a little — or a lot — of massaging to match the real thing. As Niklas explains: "When you go from the Platonic ideal version of the blueprint of the amplifier to the actual amplifier, that's when you need to start making measurements. With every single thing we modelled, we had to find a way to capture the unique properties that aren't in the schematic. That's a big part of the challenge. How do you capture these properties so that it makes sense in mathematical representation?

Recreating the Eurorack modular synth environment in software proved particularly challenging because of its open-endedness.Recreating the Eurorack modular synth environment in software proved particularly challenging because of its open-endedness."If we know it is a resistor, if we know it is a capacitor, if we know it's a triode, we can build a model of it — but exactly how that triode sounds depends on what kind of triode it is, and even two triodes that have the same specifications can sound different. So there is obviously something that they don't list in their data sheets that makes them sound different. We spend a lot of time, especially when we work on guitar amplifiers, trying to figure out what we need to measure on the triode to capture those properties that aren't in the data sheet. Also, how do we properly measure those things? Because the people who create the data sheets don't know!"

Measurements alone can be deceptive, says Oscar: "If you look at two signals on a scope, they can look very similar and sound very different, or they can look very different and sound very similar, because the ear and the brain do strange things. We still haven't found a good way for the computer to be able to tell you how much two signals differ in terms of audible contrast."

Component Parts

The key is to try to understand which of the many properties of any given building block make a difference to the sound. Arvid: "This is a sensitive topic, but for guitar stuff, for example, there are a lot of things that just don't matter so much. You can easily be fooled by listening to or trying to compare things too early in the signal chain, because they have differences that will be filtered away anyway when you send it through a crappy guitar speaker, which is needed to get the right sound.

"Guitars are so tricky. They are so extreme when it comes to gain and distortion, so it can be sometimes hard to know what will matter and what will not. You might think that it doesn't really matter what happens early on if you're just going to make a square wave out of the signal in the next stage anyway, but it turns out that for guitar sounds it's very important. You can get really clean if you just turn down the volume low enough. That has an impact even on the distorted tones in a bit of an unexpected way I would say. A lot of the dynamics of the guitar sound is about that. It's about the transition between distortion and not as much distortion.

"Some capacitors just don't matter, because if they change by a couple of percent it makes no difference. Others are placed in parts of the circuit that make their contribution much more crucial, and then they can actually have a big impact. That's a bit part of the modelling job: to try to understand what parts here are the important parts. On a regular basis, we need to de-solder components to measure them individually to get the correct response, but for some components you can increase the value of them by a factor of two with no effect, so it is tricky."

Maths Matters

For many years, the Softube company consisted only of Oscar, Niklas, Arvid and Torsten Gatu, who is now VP Sales & Marketing. Between them, they not only created the products but handled everything from building Console 1 prototypes to web design. However, the last few years have seen impressive growth, and there are now some 25 Softube employees. All of them are, naturally, music fans, but as Arvid emphasises, the intellectual challenge of modelling hardware in software is a big part of what makes the job appealing.

"In some sense it's a bit frustrating that you could make compressor and EQ circuits in so many ways, but that's also a good thing. It's because of that it will never be super-easy to make good EQ and compressor plug-ins, because there are just so many variations, and they all have their own quirks and work in different ways. As an engineer, I really enjoy that this is still not a solved problem. There are still a lot of things to be done when it comes to the math part of it and the modelling part of it. I think that's also part of what makes us attractive as an employer for engineers, because they are difficult problems to tackle.

"Dealing with music stuff of course is attractive for people that like doing music, but also almost equally important I would say is the fact that we do difficult stuff — because there are so many boring engineering jobs where the difficult stuff was done 10 years ago by someone else. Here, we have to do new difficult engineering projects all the time, which is attractive for people that actually want to use their knowledge and math and programming and that kind of stuff.

"I like math a lot — and this is a fascinating use case for pretty difficult math!"

What's Correct?

Instinctively, most of us would say that plug-in recreations should be as faithful to the original hardware as possible. In practice, however, there are situations where that is not so desirable, and others where it's not even clear what that would mean. Arvid Rosén offers an example of the former: "Some of the old designs that are still used today, like Pultec-style EQs for example, are very sensitive to the output impedance of the thing driving them. It will typically change the Q of the EQ, which is something that most people today are not very aware of. It was designed to work together with a higher-impedance environment, but if you do it like that, then people who have a unit at home will think it's different and we failed in modelling, because they were just connected to a really low-impedance audio interface."

Sometimes it's even necessary to modify the response of a plug-in to make it less realistic, in order to meet the expectations of users. "People expect old-fashioned tube designs to distort, but it might turn out that to get to that point, you have to drive it with 50 Volts or something that we don't typically do! So, sometimes, you need to tweak the levels a bit to expose a wider range of sounds."

In software, we also expect to be able to use plug-ins indifferently on mono, stereo and perhaps surround tracks. Yet many classic pieces of studio hardware were only ever made in mono versions, and it's not always obvious how a hypothetical stereo version should or could work. "That's another interesting topic that's deeper than you might expect," agrees Arvid. "What do you expect to happen when you load a certain kind of effect on a stereo track, for example? What do you expect to happen when you collapse that back to mono later? It's an interesting area of both understanding the signal processing aspects and the use case, and trying to find a solution that makes sense.

"It's especially true for feedback compressors. It's difficult to get the feedback behaviour from both channels at the same time. How should it work? That's a very non-obvious problem that's hard to describe, and I think a lot of users would be confused. I mean, if you have a setting that sounds great in mono, and then you load it on the stereo track and it sounds very different, because the feedback part of the circuit works in another way — even if the hardware would do that if you link two of that particular compressor together — then you might have to do something else that makes more sense."

In some contexts, plug-ins also need to behave in a more repeatable way than analogue hardware. Arvid: "If you have a noise source in some kind of synth, then we might want to make it predictable in a way, so that whenever you bounce the track twice, you will get the same noise. Otherwise, you will tweak the peak limiter to have no clipping, and then you're just doing the final bounce and the noise will be different, because it's random, and it clips.

"A lot of tricky design choices also come from the fact that in the host software on your plug-in you can have a loop, and you can go back in time. What does that mean for a hardware? It's like playing something up, and then using a time machine to bring it back to four seconds ago. It's so silly, but it's difficult. Sometimes you want to re-rotate to stop there, but sometimes you might want it to continue. It's a lot of small hidden choices that need to be made."

Users can also generate much more radical control movements with software than is possible with hardware devices, so plug-in versions need to cope gracefully with extreme settings and parameter changes — even if the hardware circuit wouldn't. "It is sometimes tricky to know how to balance realism and usefulness," says Arvid. "How will people use it? They will try to turn knobs to their extremes, and what do you expect then? What would people expect if you automate some switch that turns the high-pass filter into a low-pass filter, and you flip it like crazy? What will happen? What's the relevant result of that action?"