Reason and VCV Rack are meant to play with each other, but neither is eager to. My ideal DAW would be Reason, with front-patched VCV modules living directly in its rack.
It’s a shame integrating them is still pretty difficult. However, I have already used VCV successfully to record songs in Reason, and integrated Reason 11 instances to live VCV performances.
In this thread, I will summarize my efforts so far, good and bad, to use them together. I won’t go into detail about each one - I will only do so upon request. Otherwise, it’d take me days to write this post, and I am not even sure it’s of interest to anyone at all.
Fantastic synths, excellent sample playing and mangling tools, great effects, nice player devices (especially for live generative music), all that for a low CPU cost.
Reason’s studio rack metaphor uses pairs of stereo audio cables and monophonic CV/Gate cables, making a distinction between both kinds of cables. Rack devices can be connected to Reason’s fantastic mixer, and all have an implied connection to its serviceable (if aging) traditional sequencer.
While its rack can be kinda coerced into being a modular environment, it’s primarily sold as a DAW for EDM and Hip-hop: the devices favor being “instant satisfaction” black boxes, with hardwired built-in filters, envelopes, and effect sections, generally offering at most a modulation matrix to tinker with their internals, or swappable sub-modules.
Reason supports VST2 since 2017, and is available itself as a VST3 since 2019.
Hosted vs. side-by-side
There are three different theoretical ways of going about this: hosting Reason in VCV, hosting VCV in Reason, and running both side-by-side.
Because both Reason and VCV Rack are capable of everything DAW-y, I want them to be able to send each other signals bidirectionally, and not simply use one one as a synth or as an audio effect within the other.
When Reason is used as a VST, you can no longer access its fantastic mixer, nor its sequencer, which, while it is a neglected aspect of Reason, it still quite decent.
When both are used side-by-side, there’s no more total recall - you have to keep in sync your save in both programs.
For live improvised generative jams, I find embedding Reason within VCV vastly superior - for now. It might change once I get to try VCV for DAWs.
For recording a sequenced song, I much prefer the other way around, to be able to make use of Reason’s sequencer and mixer.
Now, let’s review many of our options:
VCV for DAWs (upcoming)
It’s not released yet! I’m mentioning it only because you should be aware it’s coming with VCV 2.0. It will be a commercial product allowing you to run VCV as a VST2 plugin. It’s likely to be the easiest way to host VCV within Reason once it’s available. I will update this thread with any relevant info once I get to try it.
Bridge was an experimental VST allowing for a side-by-side setup. 1.x versions of Rack no longer ship with bridge, and while it can still be used if you grab the files from a 0.62 installation, it never was sufficiently reliable to use. You might get lucky, but don’t count on it - expect heavy crackles making it entirely unusable.
VeeSeeVST (non-official, no longer updated)
VeeSeeVST is a fork of an old 0.x version of VCV Rack, that ships with a collection of free modules. It works well, but with multiple drawbacks:
- It won’t be updated anymore, so any issue is here to stay
- Import a patch from standalone VCV doesn’t work well
- Many recent modules won’t ever be available
- It doesn’t support polyphony
- It’s slower than 1.x
- You’re stuck with the old text-only module browser
- No MIDI out
Where it really shines is when you really just want that one specific eurorack module as a reason rack device. Like just using Clouds as an insert.
Up to you to decide if it’s worth it to use something obsolete until the official solution is out, and if being able to edit your projects long-term matters to you.
VCV Host is a commercial module that allows you to run VST 2.x plugins. It’s cool and nice and buying it supports the project, but there’s a tiny little problem: Reason 11 is a VST 3.
My understanding of the whole VST versioning thing is that it’s a big corporate play by Steinberg to muscle in on everyone to force them to deprecate a standard that has too much inertia to die and nobody else actually wants deprecated, causing as much incompatibility as possible for everyone in the process. The usual story with software pretty much.
So, to run the VST 3 as a VST 2, we need a wrapper. There are more wrappers than the two I tried, but those others can’t be obtained for free.
VCV Host with Kushview Element
Element has many more features than being a wrapper, but that’s all I wanted from it so I won’t comment on other features.
It works well for running a single instance of Reason, but with a few limitations:
- Mapping parameters is a pain. You have to map the Reason parameters to Element, then the Element parameters to VCV.
- The mouse wheel doesn’t work
- The main problem: running more than one instance is incredibly slow. Windows take 30 seconds or more to open. The audio thread can cope just fine, but the UI goes to hell past a single instance. Always closing the windows after you open them alleviates the problem.
- Running multiple instances of Reason in a single Elements instance is possible. It still slows down the UI greatly, especially after a reload.
- You can only bind 8 parameters.
- Receiving the MIDI clock from VCV somewhat works, but not fully. It seems to break player devices, and MIDI out.
Reason’s MIDI Out device is limited to sending MIDI out to the VST, not to a loopback device. However, Elements can intercept that MIDI out, and send it to a Loopback MIDI driver, which you can then grab back into the rack via a MIDI-CV device.
Recommended if the limitations are acceptable to you.
VCV Host with the mysterious vsti3shell.x64.dll
After installing it like a normal VST, it will allow you to run Reason as a VST, but with a few caveats:
- This time, you can use multiple instances without any UI performance issues.
- No MIDI out. I cry.
- The resizable browser pane won’t work properly if you open the Reason window with the pane closed. This can be solved by opening the browser, closing the Reason VST window, and opening it again. Resizing will work until you close the window.
- After closing the VST window, subsequent re-openings will not always work. Click the Eye button on host repeatedly until it works.
- Sound WILL crackle every single time you open and close the plugin window, no matter the system load, or the settings used.
- Maybe I’m the only one to run into this issue, but the first instance of Reason you add to to a patch will crash like 99% of the time. However, once you manage to get it to run even once, if you save the host preset, it will load properly every time, and subsequent instances can be added without relying on the preset. So to save you the trouble, here’s the primed preset file for Host I use. You WILL have to open it in a text editor and edit the
"pluginPath": "D:\\VST/pvst/vsti3shell.x64.dll"line to match where you have installed your VST first.
Preset file: reason.vcvm (3.7 KB)
Different trade-offs from Elements, hard to say which is the best for you.
Two laptops side by side
I have not tried this option, but this would be the simplest way to run them side by side without messing with loopback software. Plus, if you’re performing using laptops, you probably don’t have enough CPU for a loopback-based solution anyway. So if you got 'em, and also have a sound interface with enough I/O, just add a pair of cheapo USB <> MIDI converters and never bother with software again.
Loopback drivers are essentially virtual devices that route their inputs to their outputs, but that masquarade as normal hardware as far as your audio software is concerned.
To make Reason and VCV communicate, you will need a MIDI loopback driver, and an audio loopback driver.
MIDI loopback: LoopMIDI
I haven’t looked further than loopMIDI for MIDI loopback drivers, because it works perfectly without any annoyance.
Audio loopback: ASIO4All
I used to use ASIO4ALL to add VST support to Reason before it added it officially, lol. It’s reliable, but a pain to set up, and in practice you have to tinker with the configuration every time you start a session.
Audio loopback: VB-CABLE
VB-CABLE adds a virtual audio interface with 8 channels to Windows. This is rather easy to set up, and my suggested first option.
Audio loopback: Voicemeeter Banana
By the same author as VB-CABLE, Voicemeeter Banana allows for complex routing of virtual audio. The initial setup is challenging, but then you don’t have to tinker with it. This is my current preferred option, as it allows me to route audio to stream with OBS Studio, and has a built-in recorder.
Audio loopback: JACK Audio
I found it a huge pain to set up, and if this thread doesn’t make it obvious, my tolerance threshold for painful hacked together setups is quite high. VCV has I/O modules for the JACK protocol, but JACK in general is a Linux thing. Absent a JACK I/O device in Reason, you will have to mess up with servers and drivers and config files. Not worth the trouble.
MIDI & Audio loopback: OS X options
I haven’t used OS X in years, so I’m not sure what are the best options anymore. But last I used it, virtual MIDI devices were built into the OS, no third party software required, while Soundflower was the easiest way to route audio between programs, but it seems it’s no longer actively updated, so I assume there might be better solutions by now.
Using more than a single stereo out in Reason
Using Host-XL, you can have up to eight audio outputs, but by default they won’t work - Reason helpfully sums all outputs to 1 and 2 without making it obvious it’s doing that. To enable the remaining outputs, you need to uncheck the “To Main” buttons on the I/O device.
Bypassing the lack of MIDI OUT in Host using Thor
Reason’s player devices are fun to use, but there’s not always a way to send their output as MIDI to the rack. If you don’t want to use a Loopback MIDI driver, you can use this technique instead.
However, you can send monophonic CV! While Reason makes a distinction between CV and Audio, VCV doesn’t. So we just need to use Thor to convert Reason’s CV to audio.
To do this, add your player device to a Thor, and reset the Thor. Then program its mod matrix as follows:
|Voice Key > Note (Full Range)||100||Audio Output > 3|
|Voice Key > Gate||100||Audio Output > 4|
Now, send audio output 3 and 4 of the Thor to the I/O Device audio output 1 and 2.
There we go! We have a player device sending V/Oct and gate data… but it’s sending it out of tune. To get it in tune, you will need to multiply the V/Oct signal by 0.7. Why that number? Hell if I got a clue, but it works.
Using a host XL, four thors, and a CV Player Tap, you can probably get four note polyphony going too.
In most cases, you will need a track & hold on the V/Oct activated by the gate, otherwise the V/Oct resets while notes are decaying.
Here’s what the setup looks like:
Thanks for reading! Please let me know if you’d like more details about any of these sections. If you use Reason with VCV, be sure to share how you’ve rigged them together and what you did with them.