Over the course of 14 years, u-he has become one of the most well-respected plugin developers in the industry, producing a range of synthesizers that have become fixtures in computer musicians' studios around the world.
The company's founder and driving force is Urs Heckmann, and, having recently developed a special version of his Bazille synth for Computer Music, we spoke to him about his background, love of synths and what's next for u-he.
Can you tell us a bit about your background in both programming and music? How did u-he get started?
"I don't have a formal education in either, so I guess you could even call me an amateur in both fields! Although I went to a grammar school with a musical emphasis, I didn't study music and never learned to play an instrument. It must have been providence, as I've been making music and programming music software since I was 14 - with a Commodore C64, by the way.
"On the other hand, I do have a degree in industrial design. The university curriculum wasn't limited to car design, sun lasses or cutlery: designing a synthesiser - like any electronic device - is a rather typical application of industrial design.
"I got lucky when VST came along in the late 1990s, as I had just finished my studies and life was starting to get serious. It took another few years with a few left turns, but in 2002 I decided to start building synthesizer plug-ins on a professional level. That way I could combine my passion for music with my programming skills, under the umbrella of my profession as an industrial designer. Everything added up; there was no alternative. It just had to happen that way."
Where does your obsession with synths come from? Do you own/use many hardware synths, and are you into the modern modular hardware scene?
"I've been into synthesizers for pretty much as long as I can remember. Back in 1978, the title music of the German version of Space: 1999 was a piece by Jean-Michel Jarre. That was the initial spark that got me curious - it set something in motion that ended up as a total obsession for synths, so I bought several digital synthesizers during the 1980s. I only really started collecting analogue synths about 10 years ago, mostly because I could use 'business interest' as a pretext to fulfil a long-cherished desire to own all the Jupiters, Prophets and System whatevers!
"I've also got a couple of Euroracks full of modern modular stuff. It doesn't resonate as deeply as the vintage gear, but after seeing people like Max Loderbauer perform live on their modular systems, I'm slowly developing a curiosity for purely modular performance. It might happen one day that I'll end up forgoing a vintage offer in favour of, say, a Studio Electronics Sensei Hybrid or a Make Noise system. Or even a Moog 35, if I ever have enough spare pennies."
Can today's best software replace "the real thing", or do they both have a place?
"I don't see plugins as a replacement for hardware. Sure, you can use one directly 'instead' of the other, if you're in the lucky position of owning both the hardware and its virtual counterpart. For most people, however, it's a question of budget and workflow. Those who can't afford hardware might be able to afford the software. Those who need a tactile component to get their creative juices flowing will prefer hardware. And if you need either total recall or mobility, you would surely go for software. For the listener, it hardly matters whether a piece of music was made with software or hardware."
Can you explain the concept of the Berlin Modular project (ie, what it is, and what products are part of the range)? What was the inspiration for the project, and what do synths like ACE and Bazille bring to computer musicians that 'normal' synths do not?
"A few years ago I wanted to build a proper modular software synth with patch cords and everything. It seemed that most existing products strictly separated the control rate signal paths from the audio rate signal paths, while a real modular synth doesn't distinguish between the two. For instance, one can patch an envelope through a resonant low-pass filter to alter the shape of the envelope.
"So I just started putting things together. I wrote the UI stuff for the cables and I put together some basic DSP. It kind of worked as a proof of concept, but developing something akin to a Moog Modular this way turned out to be a hilariously ravenous CPU hog. So 'Berlin Modular' had to be pushed into the future. We're making progress, but we still have to develop some core technologies before it can become a viable product. We plan to devise a special programming language for that.
"Having said that, it was clear that our investment in Berlin Modular could already be put to good use, so I started a couple of spin-off projects that looked very promising: ACE, a small modular with normalised patching much like the classic ARP 2600 or Roland System 100; and Bazille, a radical departure for modular synthesis in that it combines digital FM synthesis with the analogue paradigm of patch cords.
"Both ACE and Bazille have in common that any output can be patched into any input. Bazille is geek heaven - it offers much wider horizons for sound design than anything else of similar complexity. And patching crazy feedback loops works as it should - most soft synths out there with a modular 'look' don't offer this possibility."
Why use virtual patch cables? Zebra, for example, uses a wireless system, as do many other synths. What's the advantage or appeal of patch cables?
"If I remember rightly, I wanted to create a counterpoint to Zebra. Zebra's concept is based on the idea that a few very complex and powerful modules don't need much patching for complex sound design. That is, each module in Zebra has one audio output and up to two audio inputs - this keeps the audio path simple, and the routing can be easily displayed. The modulation signals are separated form the audio path, within a system designed to use modulators economically.
"Conceptually, Zebra is the opposite of analogue modular synthesisers, which is one reason why I wanted to explore the other concept."
What was the most challenging aspect of creating Bazille in terms of DSP? Any particular modules that were hard to get right? And also, what were the big challenges in terms of interface design?
"By far the most challenging task was working out how to make free patching possible - connecting anything to anything else. Essentially, this means processing all DSP modules in a single, huge loop.
"On top of that, for the sake of SSE optimisation I had to write everything in vector assembly - the code looks very nerdy because every instruction processes four samples in parallel. This explains why there are four oscillators, four filters, four lag generators, four envelopes, four multiples and so on. When we process one, we get three for free. As you can imagine, this is an extremely difficult coding paradigm.
"The toughest modules to get right were of course the oscillators. They're processed without any 'if' statements at all, which for classical phase distortion algorithms is a bit of a challenge. The pair of combinable waveforms, including the 'resonant waveform' trick with added window function, plus the extra window and phase multiplication in the 'fractal resonance' bit are completely realised with analogue logic (ie, comparators and masks instead of branches). That's probably the geekiest thing I've ever done, and to be honest I'm rather proud of it."
What are some of your personal favourite patching tricks for Bazille CM?
"One neat trick I haven't seen very often in Bazille is to use one of the oscillators as a waveshaper. You just need to set that oscillator to zero Herz and phase modulate it, linearly, from an audio signal - for instance the other oscillator. You get get some pretty gnarly sounds out of that.
"Another thing that could be explored further is classic DX-type FM. The full version of Bazille is actually capable of 8-operator FM, and even Bazille CM can do 3-operator FM using both oscillators plus resonating filter. It would be great if users could investigate this mostly unexplored territory and publish their results"
Tell us about the differences between Bazille CM and the full Bazille. What are some of the most useful and exciting additions in the full thing?
"We wanted to keep it fairly powerful, so Bazille CM has almost exactly the same set of modules as the full version, only fewer. For example, two oscillators and one filter instead of four oscillators and four filters. There's only one LFO instead of two, and no extra ramp generators.
"One cool feature of the full version is the spring reverb, which has a great old-school vibe very much in keeping with modular synth traditions. Also, 'much more of the same' lets you do crazy stuff that's impossible in the simpler version. Modular system owners know that adding just one module doubles the possibilities. For instance, there's lots of mileage in having two modulation mappers, and the advantages of four filters instead of just the one should be obvious."
What's next for u-he? Will there be further entrants in the Berlin Modular series, and what could they bring to the table?
"Well, we recently announced a little synth called Repro-1 which we're designing primarily as a slavish emulation of a certain vintage analogue. Technically, it's another stepping stone towards Zebra 3 and Berlin Modular as we're researching a novel method of computing analogue oscillator models. We're also bringing the analogue filter modelling technique we used in Diva to the next level. Repro-1 will look like a simple synth, but the R&D we put into it will also benefit the complex synths we have planned."
Bazille CM is free with the August issue of Computer Music (CM232) which is on sale now.