Open Source Synthesis – creating and using open source software and open hardware for synthesis – exploded in 2017 and its growth shows no sign of stopping.
One of the biggest open source synthesis stories in the last year has been the introduction of VCV Rack, a free, multi-platform software modular. It’s available for Linux, Mac & Windows and offers a powerful Eurorack-style virtual modular synthesizer platform.
Though VCV Rack is still in ‘beta’, it has quickly developed into a platform that offers dozens of modules. It has an active user base and there are already albums created with VCV Rack.
In this interview, one in a series on Open Source Synthesis produced in collaboration with the Art + Music + Technology podcast, Darwin Grosse talks with VCV Rack creator Andrew Belt about creating the free modular platform, how he developed it and the importance of open source to its creation. You can listen to the audio version of the interview below or on the A+M+T site:
Darwin Grosse: Let’s start off by having you talk about your work. Because in addition to saying VCV Rack, which is going to light up a lot of people’s eyeballs, you’ve been doing a lot of other stuff in the audio area too. Why don’t you just fill us in on what you’ve been up to?
Andrew Belt: That’s right. In February, when the Synthesis Technology E370 Kickstarter kicked off, I started the WaveEdit software for SynthTech.
Around that time, I was all VCV Rack, so that’s actually mostly what I’ve been doing in the last year. I’ve been hanging around the community for a few years and I just decided “I’m just going to write software!”, so that’s what I do.
Darwin Grosse: All of the modular software so far has kind of gone out of it’s way to abstract the idea of a modular synth into….little boxes and atomic user interface elements. You decided to go the other way. Your system looks as much like a modular Eurorack system as my Pittsburgh structure full of modules looks like.
What made you decide to go that direction?
Andrew Belt: I wanted people to experience what it looked like, which I think is just as important as what it feels like or what it sounds like.
What it looks like is a modular Eurorack system. It’s supposed to be based around Eurorack. There might be some modules coming out that might use other formats, but I chose Eurorack because it’s popular. In the last couple of years, it’s taken over the world.
I guess three years ago is when I started the idea behind VCV Rack. I hadn’t worked on the development of it at that point, but I decided that about half the people really like using a UI that’s modeled after hardware. Then, the other half which would probably prefer a more abstract interface, which is what you’re talking about.
If you look at the market, about three years ago, there were a few packages, Pure Data’s is probably the most abstract that you can get. You could get into programming languages and that would be a bit more abstract than Pure Data.
But, we had the abstract stuff covered. You can make modular music by using other ways of setting up the modules and moving the parameters and everything. Nothing that really satisfies the full experience and that’s what I wanted to get at with VCV Rack.
That’s why I chose that design style. It’s mostly just stubbornness and keeping my philosophy from when I started the project.
Darwin Grosse: I think that that’s actually smart though, because in my experience at least, most successful software developers tend to have a certain level of stubbornness, because it prevents you from having to chase after every red herring and every squirrel that runs across the path with a good idea…
Andrew Belt: Yeah. If I took every feature request, first off, I would have three years of work to do.
Second it would be the most bloated software ever!
Darwin Grosse: It is the case so that when you take a look at feature requests, they always expand at about a three-to-one level from the time that you have available.
Over the first year, you’re for sure going to get three years’ worth of feature requests!
When did you first release this out into the wild?
Andrew Belt: It was at Knobcon, actually.
I was eating lunch at Knobcon on a Sunday or something like that. Someone was trying to ask me questions and I was like, “Hold on.” I released the website and a bunch of people downloaded it.
That was at Knobcon, while people were coming up to me.
Darwin Grosse: Wow. That’s hilarious.
Andrew Belt: I was staying up the previous few nights, so I was late essentially. I’m always late on everything. That’s another thing about me!
Darwin Grosse: I also noticed was not only have you gone with a very traditional modular Eurorack look, but you have engaged my friend, Wes Milholen (Grayscale) in doing some of the design work for that.
How did you get to know him and how did you get him involved?
Andrew Belt: I blind contacted him around November of last year, of 2016. He just picked up the idea and he started liking it just as much as I did.
He wasn’t super involved initially, but then he started ramping up during the summer when we worked on the fundamental plug-in pack, which is the thing that Rack comes with.
I gave him a really early alpha version to play with and he liked it. You can do that in this community. You can just email someone and make connections. It’s really easy. Everyone’s friendly.
Darwin Grosse: I think so, too. Since you’re doing this in an open sourcing kind of way, there’s not this sense that you have to hoard your knowledge so that you can eventually cash in on an IPO.
Andrew Belt: Right.
Darwin Grosse: This is a lot more like you’re in the process of, not even developing a community, but just sort of gathering interested participants to get to know each other, right?
I already have started looking at how people are interacting with it and the kind of excitement that’s come with it. It’s drawn in people from the modular community, but it’s also drawn in people who sort of were frustrated by the modular community. Either because of it’s high expense or because of the physicality, which for some people, isn’t viable.
If you travel a lot or if you have a really small place, even the smallest Eurorack gets to be a bit of trouble, right?
Andrew Belt: Yeah.
Darwin Grosse: This, all of a sudden, is virtualization, while still maintaining a valid system concept.
Andrew Belt: There are a lot of people that just want to play around.
I’m sort of young and a lot of young people have no money, so this is good for them!
Darwin Grosse: Right.
Andrew Belt: I write this for myself, actually. I have a Eurorack. It’s impossible to haul around, so I do take Rack to coffee shops, if I want to play around with it.
There’s a lot you can do with virtualization that might not be as pleasing as turning knobs and patching cables in real life.
I think the advantages and disadvantages kind of weigh equally with that.
Darwin Grosse: One of the things virtualization does is it gives you an opportunity to test out ridiculous options.
Like – what happens if I have an FM patch with 20 oscillators feeding into the FM input of the one next to it, right? What could that be like? I’m not going to go and spend the $4,000 it takes to actually try that in the real world, but it’s nice to have some mechanism by which I can take that for a spin.
It’s clear you’ve got some chops and DSP programming. What’s your background and how did you get into both programming and modular synthesis in a way that puts you in a position to actually be able to pull this off?
Andrew Belt: Well, around three years ago, I was still working on my math and physics degree at University of Tennessee. I didn’t have much free time, so I didn’t really work on software for synthesizers, but I had time to play with synthesizers.
For some reason, I just have to write software constantly, whether it’s about school or whatever I’m doing. It could be about video. I need a creative outlet. I’m not very good at making music, I’m really good at math, I guess. Instead of actually making music, I could use math to make music. That’s really the only outlet you can do with that.
I’ve been programming for a while. I’ve been doing a lot of graphics, actually. I’m very graphics heavy. DSP is difficult. It’s a whole other animal than graphics is. It’s more math heavy, so I think compared to graphics, which is more of a computer science field, DSP and analog signal processing and circuit design is a lot of mathematics. That’s where I get my background. Just from working on the math degree, I don’t do anything specific to DSP outside of VCV Rack right now.
Darwin Grosse: When you talk about DSP, I mean, half of the people doing it can’t be bothered with the C++ compiler, because they want to work on raw C and do it a bunch of assembler as well.
In a way, there’s an old school and close-to-the-iron effect with the DSP stuff. How hard was it for you just to basically say, “Well, I’m going to learn enough of this to be able to crunch those numbers?” Did you find that fairly easy?
Andrew Belt: Sort of. It’s a whole other field. It’s something you don’t really get taught in math or physics degree. I probably have more of an exposure to it if I was an electrical engineering major at the time when I started.
I don’t know if you work on it for two years, I would say, you can get to the point where you can really understand the field as a whole. You can say that this modern method is better than this modern method.
Darwin Grosse: Right.
Andrew Belt: Just looking at the fundamentals. You have to know your Fourier transforms and then on the computer side, you have to know your SIMD computations and everything that makes DSP possible with that.
It’s a lot of custom knowledge that you don’t really get outside of DSP.
Darwin Grosse: Great work making it available not only on Mac and Windows, but on Linux. I think that we’re going to see so much more action in the Linux audio world.
So much audio software now is being produced using the JUCE Library, right?
Andrew Belt: Right.
Darwin Grosse: But, you didn’t use that.
Andrew Belt: No, I didn’t. I have tried it probably three or four years ago. It’s a huge library. It does a lot. I would say probably about half the reason I didn’t choose that is because I want VCV Rack to be completely free of license encumberment.
JUCE, I could be wrong, I think it’s GPL plus a commercial license.
Darwin Grosse: Right.
Andrew Belt: Right now anyway. I’m probably years outdated. That’s fine.
But first off, the GPL is too complicated I think. I try to stay away from it for my own projects, although I think WaveEdit is licensed under GPL. Yeah, the license is about half of it. It’s great and everyone should probably use it, but I just wanted my stuff to be free from that.
Darwin Grosse: Right.
Andrew Belt: The second thing – is in order to really fully understand what I’m doing, I just have to write the entire library over again. I know that’s really horrible. It means that I can’t work with people well and work with people’s code, but that’s essentially what it is. I can’t understand what something is doing if I didn’t write it.
Darwin Grosse: I think that that’s more fundamentally important than you’re making it out to be. You’re being very self-deprecating about it, but I also think that there’s something kind of really powerful in what you just said.
Because right now, a lot of software seems to be developed by almost like grabbing pre-build pieces off the shelf and bolting them together in order to make your own personal Frankenstein, right?
Andrew Belt: Yeah, that’s right.
Darwin Grosse: The problem is what so often happens is if something goes haywire, it’s like, “Okay, well, I’ll put this piece back and I’ll try a different piece that looks like it.” There’s not a sense that people are really understanding it at the core
I don’t think necessarily everybody in the world has to know everything down to the semicolon, but I do think it’s useful to, at least on some projects, especially projects that represent your passion. Why the hell wouldn’t you want to do that?
Andrew Belt: Yeah, that’s the important part of it.
Darwin Grosse: It does put you in a position to really learn a lot about the scheme of what you’re doing as well.
How did you get into the music half of this? Because there’s a lot of ways to get paid better than making fake modular synthesizers, right?
Andrew Belt: I’ve always been musical. My family’s been musical. I was in my middle school orchestra. I played the string base.
That lead me into joining a band and playing an electric bass for probably three years. We were somewhat successful on the city level of my hometown.
Darwin Grosse: Where was your hometown?
Andrew Belt: Johnson City, Tennessee. They still haven’t really picked up the electronic style of music right now. It’s all stuck in kind of punk from the very early 2000s, late 90s. That’s what it was.
I bought some synthesizers, just because I thought they would be kind of interesting. Then, that just took off for me. I was so distracted by the synthesizers that I couldn’t really practice my instrument that I was supposed to be playing. We just (played) heavily garbage sounds in the background of punk rock, which was just me playing with a microKorg or something like that.
Then, I started getting into digital audio and using things like Ableton Live and Reason to sequence the music to play in that band. I eventually left that band. They went on and did things. They’re probably still known around.
Anyway, I had a pretty unimpressive life with digital audio in the last 10 years. I was always interested in how the stuff was made and how the sounds were actually being generated. I kept going deeper and deeper into the lower level ways of synthesis. Then, I discovered modular probably six years ago. That really captivated me, because it’s a really good way to see what you’re actually putting together in a literal sense. You’re putting together modules.
Also, on the music note, I was trying to be a concert pianist about two years ago. If I was successful with that, we probably wouldn’t have VCV Rack.
I got pretty good though!
Darwin Grosse: Really?
Andrew Belt: I’m really good at piano and polyphonic stuff. Makes VCV Rack kind of nice, because you can sort of play polyphonic. We have a quad mini interface, which is enough for me, I guess.
Darwin Grosse: When you say that you’re good at polyphonic stuff, do you mean like the way that you hear music in your head? You’re able to hear polyphony in your head? Or is it that like physically your hands and stuff are able to cope with it?
Andrew Belt: Probably most accurate thing to say would be that – when (people) want to perform music, some people think monophonically – they’ll think of the melody.
I like thinking about the background chords and stuff. That’s why I really love disco, because disco has these weird chord sequences that you don’t hear in modern pop or something like that.
Darwin Grosse: I am exactly the opposite.
I, for the longest time, was a guitar player. I started playing bass and I loved it, because I came to realize that when I think of music, I really think monophonically, right? That’s how I work my way through a thing.
I’m kind of envious of the idea that that’s how you negotiate musical thought, but it also does make it seem kind of weird that modular would have even come on your radar then.
Andrew Belt: Yeah – I think sound design is more interesting than music composition.
Darwin Grosse: Well, I was going to ask about that, because people come to modular systems for a lot of reasons. Some people come to them for sound design, because you can work at the elemental level and also because sounds and control voltages and all that, they are all just signals, right?
Andrew Belt: Right.
Darwin Grosse: It’s the one thing I always carped about with Buchla systems. This idea that audio and signals were two different things. I always like thinking of it as exactly the same thing, right? For some designers, it’s really valuable.
But other people really come to it because it’s sort of like a physical generative system. Other people come to it because they can make an idiosyncratic instrument that then they’ll kind of keep the same forever.
Andrew Belt: Right.
Darwin Grosse: I’m always curious with people who have unique backgrounds what it is that drew them into modular.
Andrew Belt: The one thing that maybe is different from me than some other people that get into music is I just want to keep getting lower and lower level into the fundamentals of what I’m doing. That’s the key.
Still, I can’t make music, because I’m thinking about the details too much!
Darwin Grosse: It’s funny, because the thing that you said that really caught my attention was this idea that you have to be coding all the time, right?
Andrew Belt: Yep.
Darwin Grosse: The question is, since you like coding all the time, do you also like coding the same thing? Or is it like now that there’s an implementation of VCV Rack, you want to get onto something else?
Andrew Belt: I do like sticking to one thing. I’ve usually had a theme in the last few programming projects.
VCV has the trait of pulling together almost everything that I’m interested in into one software package. If I’m bored with working on DSP, I can just work on graphics. Or I can work on the website, which is another thing. It’s pretty much everything. It requires a lot of maintenance in many areas, so I don’t really lose interest.
The project, as a whole, I might put down the whole project for a day or two. Then, I want to work on cleaning up code just for no reason so I’ll just get back into that.
Darwin Grosse: Right. Now, this being an open source project kind of gives you some relief from some of the more onerous parts of this, too. I would imagine, especially running on three different systems, it would probably be a bit of a pain if all of a sudden, you started getting maintenance requests from people with Windows XP and an old DigiDesign Studio 8 sound card and questions about “Why won’t VCV Rack work on my system?” Or do you still get those?
Andrew Belt: I definitely still get those.
Yeah, I was talking to one of my friends today. I was frustrated. People are just asking me like, “Hey, it doesn’t work on my Commodore 64 when I set the screen resolution to 800 x 12. I just get all this weird stuff!
I think being open source probably even makes it more likely to get support requests, because you can see what’s going on inside and want to change it in some way.
I’m using a few fundamental libraries for compatibility and for the audio MIDI graphics and some other things. I’m trusting those libraries to give me as much compatibility as they can. VCV Rack is a good test for those libraries and how they compare with other proprietary solutions. I don’t know if it’s better or worse. I think I’ve had some problems with commercial software packages that I don’t see in the open source ones.
Ideally, in a year or two, I think enough people will join the project with the expertise to fix their own compatibility issues, which will go back into the projects and then eventually find their way into VCV.
Darwin Grosse: I was wondering about that, because one of the things you said is that you don’t feel like you work well with other people. But, one of the things that is kind of necessarily, especially when you do try and hit the home run here with the software packages, you kind of need a group of people to work with that are going to help you handle some of these technical issues. Maybe in systems that you’re not super familiar with or systems that you never wanted to be familiar with, right?
Andrew Belt: Yep. I’d like to take advantage of the software modularity of VCV.
I’m using libraries. I’m not re-writing every part of every piece. There are some libraries that I’d love for people to just take off with. For example, a sample rate converter would be really nice with all the requirements that I demand. Like audio issues. I’d love to not be on those projects and just have everyone else deal with them.
I like being an application developer, rather than a library developer. I could be writing something to be used in other software, but developing an application means that you don’t have any demands that aren’t yours, essentially.
I would say if someone else picked up half of the work on VCV Rack, that’d be fine with me, but I’d have to get used to that essentially.
Darwin Grosse: When you say “as an application developer, there aren’t problems that aren’t yours”, do you mean in comparison to a library developer, who might have to support someone who’s doing a telephony application in Singapore or something, as opposed to what it is you’re doing? Is that kind of what you’re talking about?
Andrew Belt: Yeah, libraries have many software packages that are using it, so they have to keep the APIs very stable. With Rack, I guess I have to keep the APIs stable for the plug-in developers.
That’s another thing, I guess, Rack right now is really not an application, but a library for the other plug-ins.
Darwin Grosse: Or a hosting environment or something.
Andrew Belt: Yeah, a big chunk of it is actually compiled into the plug-ins that everyone is developing. There is a library component.
Darwin Grosse: Let’s talk a little bit about plug-in development and the plug-in developers.
First of all, I noticed that you have some pretty interesting tooling up there. You have basically software emulations or software implementations of a lot of the Mutable Instruments stuff.
You have a bunch of stuff from Befaco. You even have something that’s very similar to a SynthTech module.
Have you interacted with the manufacturers on these? Or it’s just something you’re doing in an emulative manner?
Andrew Belt: I always contact the manufacturers. With SynthTech, you’ll notice that one’s branded as E-series.
That’s because Paul (Schreiber) likes his brand, so I’m not going to attempt to make a plug-in that matches his modules, because I’ll get it wrong and he’ll have something to say about it. I think it’s somewhat close, but I would not want to compare that head on with his modules at this point right now.
Befaco is very excited about the project. I don’t know this for sure, but I think they’ve gotten more sales…or they’ve noticed an increase in sales due to the VCV Rack emulations.
Mutable Instruments is such a large Eurorack manufacturer, I don’t know if there’s enough statistics to say that at this point. All of them are true licensed … I guess you could say licensed. More like they gave me the go-ahead to use this stuff.
For the Mutable ports, everything is based on the open source module DSP that Olivier wrote. Then, all the Befaco stuff is analog, so they’re modeled by me. Only the panels are cloned.
Darwin Grosse: I noticed that you’ve got some developers that are really coming up to speed pretty fast. I recently had a chat with Michael Hetrick.
Oh, my God! He just laid a big pile of pretty amazing stuff (HetrickCV) on the community as well.
Andrew Belt: Yeah.
Darwin Grosse: I’m just noticing a lot of people just really diving in as if this has opened a door … The plug-in development thing has opened the door for them to take a swing at their own DSP play, just to see if it could fly or not, which is pretty interesting.
Andrew Belt: It’s impossible for me to think in the viewpoint of the plug-in developer right now, because I’m so into being the application developer.
But I do think I’ve designed the system to be easy enough for someone with only DSP knowledge to get in and make graphics and a library.
Also, you don’t need to know anything about build systems to use this software. That’s a huge thing.
Darwin Grosse: That is huge. Yeah.
Andrew Belt: If you’re a Windows developer, then it’s very difficult to port to Mac systems, for example. With this system, I’m basing it on make files only, no C-make or anything like that. It’s completely handwritten make files. That’s something that’s probably died out, but there is an art to it, and you can make cross-platform build systems that work mostly flawlessly on all systems. I think that’s a big thing.
You can make your software work on one system, gift the source code to other developers, and then they’ll build it for the other two operating systems.
Darwin Grosse: Which is the operating system you’re focused on?
Andrew Belt: I develop on Linux, but I have half a dozen computers on my desk right now, where I test other builds.
I need to automate more of that stuff. It takes me probably two minutes to make a build of something per computer, which is annoying. It could be nice if I could do that in three seconds. Just push everything all at once.
I’m a Linux user. I write all this stuff on Linux. Mostly test it on Linux. It’s a pretty consistent operating system. I think a lot of people have problems with different Distros, but once you really work out those details, the systems are very consistent and they do what you tell it to.
Darwin Grosse: Yeah, that’s true.
I don’t know of any unity of spirit behind which Distro really works for musicians or music people, right?
Andrew Belt: Right.
Darwin Grosse: It seems to kind of fly back and forth and a bunch of studios sometimes point it out. Then, sometimes people are like, “Oh, no the Mint thing.”
The second that I have to start weighing operating system variants, I need to take a nap. Then, when I wake up I’m going to get a little drunk. Because that’s definitely not a thing that I’m into.
As a Linux guy, what is the variant that you find most suitable for doing this kind of stuff? For end user work, not necessarily the development part of it.
Andrew Belt: Oh, for using it? I haven’t ‘used’ Linux in years. I’ve just developed on it.
Darwin Grosse: That’s funny!
Andrew Belt: I use Arch Linux. I’ve had my Arch installation for six years. I just take the hard drive out, put it into another computer and fix the compatibility problems. I don’t want to change anything, because I spent years setting everything up. You kind of have to do that with Arch, but once you get everything exactly the way you want, then you can go at 100% efficiency.
That’s what I’ve reached eventually.
Darwin Grosse: That’s so much different than Windows and Mac users.
I’m a Mac user. Believe me, one of the things I feel like, I actually feel sometimes like Apple is out to get me. They are out to make it no longer viable for me to be a computer user. Because it seems like every update that comes out, I’m forced into using. Forced to use it means that also then I’m forced into whatever added inefficiencies there are.
Andrew Belt: Right.
Darwin Grosse: Eventually, those stack up enough that I have to get a machine upgrade that I don’t actually want. It ends up being really, really frustrating.
Andrew Belt: It is. Yeah. I have a few MacBooks. They tend to do that. I don’t know what it is, but Windows and Mac both only last for three years and then you have to re-install the operating system to get rid of the crap.
Andrew Belt: I really have no good recommendation of operating systems!
Darwin Grosse: Well, clearly not if you’re hauling a six year-old one around in a hard drive, because that’s the best way for you to roll.
Andrew Belt: Well, it’s Arch Linux though, so it’s a rolling Distro, so it’s always updated. There’s no version of the operating system.
I just update to all the latest packages.
Darwin Grosse: That’s interesting. From a plug-in developer standpoint though, I get that you don’t feel confident talking about it, but you do have to interact with them I’m sure.
Do you find VCV plug-in developers feel like things are pretty efficient for them to get stuff working for them?
Andrew Belt: I think so. I’ve been told a number of times that this is an easy platform to get going on. I kind of want to attribute that to the build system. But I think C++ is not the most exciting language to learn in. It’s definitely not the easiest.
It’s probably one of the hardest – but it does everything that you could possibly imagine. You could hack it to do whatever you want. It’s very universal. Many people know it. If I did this in Java, people have opinions about that, whereas no one really has opinions about C++. You just do it.
Darwin Grosse: It’s hilarious you say that, because recently I’ve been going to computer language meetups. I go to the JavaScript ones and there are like little camps, you know There’s the Angular camp. There’s the Functional JavaScript camp. There’s the ES-Next camp. There’s the camp, “I really want everything to be able to run on IE 6.” It makes my head want to blow up!
Conversely, I go to the C++ thing and basically the question everyone has is, “How does that affect the heap?” I’m assuming that whatever you’re talking about that isn’t a big problem, everyone’s like, “Well, that sounds like a good option.
It’s maybe not as dynamic and as exciting, but it certainly may be easier to please!
Darwin Grosse: It does make me wonder, though, had you considered at all doing this for web browsers, instead of various computer platforms? The browser makes a certain amount of stuff ubiquitously available.
Andrew Belt: Yeah, I considered it. Maybe with web assembly and all these fancy technologies coming out, maybe it’s viable that you can actually do DSP and the graphics that I’m doing at about the same performance of just writing it natively.
Darwin Grosse: Right. Well, you do have the problem though that you would be dependent on web audio – it’d be pretty difficult to get that at the lowest level, like you have been able to do with C++.
Andrew Belt: Yeah, I think web assembly kind of solves that too, because you can just process buffers with web assembly. It should run at about the same speed
I’m not sure. I mean, maybe it doesn’t enable the SIMD instructions and other fancy things you get with CPUs. It’s getting there. I’ve actually seen some DAWs come out that are entirely web-based.
I did consider it, but I think the problem right now with those is, even though they might do everything you want, you can’t really take it seriously, because it’s in the browser, and you don’t have to dedicate yourself to installing it on your system and getting everything to work.
Then, you have to rely on how are you going to save files? Is the company going to be around in a year? Most of the time, you can’t just download the systems. Theoretically you can, but it’s whether they let you.
Darwin Grosse: Well, the other thing that I’m curious about, is that there are some new plug-ins available that you’re charging for, like Console (above) & Pulse Matrix.
What’s the story behind that?
Andrew Belt: Well, we’ll have a few more, probably half a dozen, by the time this interview comes out.
Right now, I would like to work toward the goal of (developing VCV Rack) full-time for the next year. The only way that’s going to happen is if I get some financial compensation from it.
Darwin Grosse: Sure.
Andrew Belt: (The commercial plugins are) my attempt at doing that.
I’d also like to work on plug-ins, which actually require an investment, such as renting a Serge system or just buying a bunch of oscillators. I have a bunch of lab equipment for testing analog hardware, but I’d like to upgrade that as well. I’d like to test on more computers.
There are finances, so not everything is going to be free, open source. But it’ll be up to the par of commercial alternatives. The open source stuff, I think the goal is to make it true competitors to commercial software.
But the only way to do that is if you have a little bit of financial compensation.
Darwin Grosse: Sure.
Andrew Belt: All the commercial plug-ins will be used to finance the open source ones. We have a few in the design queue right now that are really exciting, but I just don’t see a possibility of releasing them as open source, just because they would take too much time.
I need to eat!
Darwin Grosse: Yeah, I hear that!
Now, the other thing that actually would make that even more powerful is if people were able to more easily hybridize their existing hardware with the software.
I do that with the Expert Sleepers modules. Are there any plans to make something that very easily allows interaction, so that you could think of VCV Rack as sort of like a modular expander for my physical rack?
Andrew Belt: You can do a lot of that right now.
I think the way to improve compatibility is just to add more modules to the core plug-in, which isn’t actually really a plug-in. It’s just built into Rack itself. All the core modules should be open source, I think, because eventually when people start fixing problems with their Expert Sleepers (compatibility) or whatever. If I don’t have exactly their system but they do, then they can fix it themselves, send back the changes, and it works for everyone.
This is an advantage of working on the integration with other hardware and compatibility issues, working on that in an open source collaboration.
I think the way it’s typically been done is if you want some plug-in to interface with another piece of software, you’d have to pay for that to finance the research and development of trying it on every single computer imaginable.
Darwin Grosse: Right.
Andrew Belt: Instead of doing that, you can just ask people to send in patches, if it doesn’t work for them. Not every musician is a programmer, but I think the few that are are powerful enough to replace that model.
Darwin Grosse: Now, the other thing is, and I imagine I’m going to be only the 45,000th person to ask, is what is your plans for interfacing this with the world of plug-ins?
Andrew Belt: The VST and AU plug-in, which will be called VCV Bridge will come out … I don’t want to say a date, but around version 1.0.
It’ll be available for testing a little bit before that. That plug-in will allow you to connect Rack to any digital audio workstation that supports VST or AU plug-ins. You launch Rack and then you launch your audio workstation. It actually doesn’t matter what order you launch those in.
The VST plug-in stores a channel, which is connected to a module set on that same channel.
Darwin Grosse: Okay.
Andrew Belt: I think you can choose between one and 64.
Stereo Audio and MIDI and DAW animation will go into that module and then stereo output going out of the module. It’s a way to cope with the fact that Rack is not a VST.
It probably never will be, if you think of Rack as a bit like Reason.
Darwin Grosse: I was going to say, it sounds like it has a lot of parallels to Propellerhead’s ReWire, without necessarily having to be a whole new system that everyone has to adopt.
Andrew Belt: Right. I’m not sure why Propellerhead didn’t do that, actually, because maybe there’s some problems with it. With ReWire, I think there’s an order you have to open Reason versus Ableton Live, for example.
Darwin Grosse: Right. That determines who’s the master.
Andrew Belt: Each piece of software has to actually include ReWire. I’m not probably going to get Ableton to include the Rack interface.
My best second bet is to just use their existing format, which is VST2. Just make a VST2 plug-in that sends audio. You can send up to 64, but I think in practice, you probably won’t be able to get up that much. In practice, you shouldn’t need that many …
Darwin Grosse: What’s the near term future for you and VCV Rack? Because at the rate that you’re going here, if you don’t solve world peace pretty soon, I’m going to think that you’re taking a nap, because you are burning through stuff at an amazing rate.
Andrew Belt: On the plate for the next few months are some new commercial plug-ins, and better stability for Rack itself.
That’s one thing that a lot of people have problems with. “It doesn’t work on my Commodore 64.” I’ll fix all of those problems. Not the Commodore 64!
Darwin Grosse: Not the Commodore 64 one. Good. I’m glad you don’t go down that route.
Andrew Belt: I’m just fixing stability issues. I haven’t done anything for performance. I’ll be doing performance enhancements and optimizations in the next couple of months. Just making it a little bit more professional, as a viable alternative to loading up the VST into a DAW.
I’d like people to use Rack with the same expectations (that they have) of their existing professional software.
It’s not a very concrete to-do list, but it’s a lot of work to do. That’s what the next couple of months will bring.
Of course, new open source plug-ins. We’re going to be adding to fundamentals pretty much for the next year. We’ll have dozens and dozens of plug-ins. Just to expand the initial expansion you get when you first install Rack. It will always get a little bit better than the last one.
Then, we’ll have to go back and fix the other ones up to the standards of the new ones. We’ll be doing that as well.
Darwin Grosse: That sounds really exciting. I want to thank you for the time that you spent here. I’m really looking forward to the work that you’re going to be coming up with, because I’ve been blown away with the stuff you’ve already done. Thank you for that.
Andrew Belt: Thanks for having me!
Darwin Grosse is the host of the Art + Music + Technology podcast, a series of interviews with artists, musicians and developers working the world of electronic music.
Darwin is the Director of Education and Customer Services at Cycling ’74 and was involved in the development of Max and Max For Live. He also developed the ArdCore Arduino-based synth module as his Masters Project in 2011, helping to pioneer open source/open hardware development in modular synthesis.
Darwin also has an active music career as a performer, producer/engineer and installation artist.
awesome interview
Great stuff!
I’ve been amazed by VCV Rack itself and also the community of developers that are creating new modules for it. VCV Rack is going to be as big as Eurorack itself, if not bigger.
What I’m really interested in is crossovers between Rack and the Euro world. I’d like to be able to use VCV Rack to create patches for programmable digital hardware modules. For example, it would be great if you could create a great gate logic or sequencing patch, and then upload that to a piece of hardware.
“VCV Rack compatibility for the Commodore 64 is not planned at this time.”
My dream is broken
“You have to know your 4A transforms”. looooooooooooool
‘Fourier’ is what you want. Kind of drives Andrew’s point as ‘4A’ though.
Also SIMD instead of Syn-D probably
We updated the post for a couple of transcription errors and typos.
Cool. Didn’t mean to come across a pedantic snob if I did. Great interview. Love open source music software and vcv rack is the shit.
It’s cool that Andrew got the blessing of the manufacturers to implement/emulate their designs in VCV Rack. It’s interesting how they differ: It would appear that Mutable Instruments stipulated that its trademarks not be used (thus “Audible Instruments,” “Macro” instead of “Braids,” etc.) while Befaco must have been all for getting its name out there.
That brings me to a minor UI change I noticed with Audible Instruments: The knobs changed colors around 0.50. Was that done to look less like the Mutable hardware? Mutable’s original colors looked better… I’ve been meaning to dig into the resource files to see if I can change them back.
Wicked job indeed mate ? solid
VCV Rack is the single most important development in electronic music in the 40+ years I have been involved. Its impact will be significant.
It is exactly what Andrew Belt says it is. The sound quality is as good or better than every other software synthesizer eco system out there and better than even some hardware.
Despite being in more-or-less a beta version, it is VERY stable and highly usable. We are seeing new modules appear on a weekly basis and many of them are incredibly creative.
The biggest problem I have with it is the option anxiety it induces when scanning through all the modules in my “plugins” folder.
Seriously? How can you possibly say that VCV is the most important thing to happen to electronic music in the last 40 years when the timber wolf just came out like 3-4 years ago?
Lol, I never noticed that pun on “timbre wolf”.
Good interview.
VCV Rack is a wonderous thing indeed and has dragged my desktop back into operation after focusing on mobile music making for a long time.
waiting for the Behringer clone
We should develop a dedicated hardware controller for this software to live on so you can have tactile, game – changing control over its parameters! ? just having fun!
It’s just impossible to compile/install on Linux. So many issues
It’s tested on Ubuntu 16.04 and Arch Linux, but if you’re having problems, feel free to post an issue on the GitHub.
Wow, wonderful interview indeed!
So has anyone developed a tutorial series around modular synthesis? Like a Modular Synthesis: 101 class per-say?
YouTube has a plethora of modular based videos, but it’s easy to suffer from overwhelm very quickly if you’re new to the methods as most of what I’ve seen assumes you are an advanced user, to me anyway.
Thanks a lot Andrew for this amazing software!
About the issues with the community development, which makes up greatest part of modules: “Why I’ll never create modules for VCV Rack anymore—and what I’ll make instead” https://aria.dog/barks/why-i-will-never-create-modules-for-vcv-rack-anymore/
“People should know beforehand what they are deciding to support when they buy from VCV’s app store or contribute open-source labor to it.”