VCV Rack to CV Control in Video Software

Hi all,

I make video processing software for a non-profit called Signal Culture. We are a studio that has a variety of video synthesizers, both analog and digital, in a modular format. In old school video synthesis, having CV to change parameters in real time was central to working in real time. While our apps have Midi integration, a lot of our users are used to working in analog synthesis and have expressed a desire to have VCV Rack as their modulation source to control our apps.

I can see a way to create “input faceplates” to create our own VCV modules so that our users can waveshape for more expressive parameter control inside our apps while also linking it to audio in VCV Rack. My concern is that having a CV to Midi style conversion will ultimately be too slow and/or have a lot of latency between applications. What is the gold standard for linking VCV modules to external software? Audio programming is a bit out of my wheelhouse, and I keep seeing that OSC is the way to go but that seems more for sending data through a network. What am I missing in this equation?

1 Like

use an expert sleepers analog output board. then it’s just like realtime audio. There is nothing particularly “MIDI” about VCV, other than that it’s sometimes convenient protocol for getting things in and out.

1 Like

Hi Squinky, I may have made myself unclear. We have used Expert Sleepers for the physical hardware. I was more talking about “digital CV” in VCV Rack and sending that via midi to software and to see if there was a better way of doing it. We have a massive Eurorack system for the hardware in the studio

This is you folks? SC Apps

Looks very cool!

So this may be simpler than you’re imagining. The description for the default VCV module:

is “Sends audio and CV to/from an audio device”. (edit: oh, fancy link preview made this paragraph unnecessary, ha ha)

So if your goal is simply to get CV from VCV Rack to your software in the same box, it should be relatively trivial? With Blackhole making the connection on Mac, for instance. And going to a different computer, just out over any audio interface, I imagine. Maybe with voltage limitations.

Easy enough to try on one in-the-box instance, and as long as I’m guessing at things, latency shouldn’t be significant.

I can’t see a better way of doing that than using Expert Sleepers stuff. And I say that as having developed an analog synth that takes Rack control voltages over USB audio & midi. I use a Raspberry Pi to get control voltages over USB and send that to the analog hardware. MIDI CCs are transmitted at 7 bit or possibly 14 bit, and at 200 Hz from Rack. Meanwhile audio is typically 16 bit and at a significantly greater sampling rate. Latency is another item. If audio latency is poor it often has to do with how audio buffering is setup.

Hey Waldo, thx for the ideas.

So with the apps, we are thinking of making it easy, aka offer free modules in VCV Rack that are tied to each particular app. So the Frame Buffer app would have a VCV Rack module also called Frame Buffer and would have specific inputs for each parameter on that SC VCV Rack module.

I personally have ways of playing with my own software, this is more thinking of making it easy for our users to implement VCV Rack into their workflows.

2 Likes

there is not difference between an audio signal and CV, you could simply connect your CV to an audio interface, there is the audio 8 and the audio 16 to make the trick, if you asking for suggestion I think Jack is perfect for this job , fit perfect sending audio (or in this case cv) between apps and it can work over network too

Hi Jason I use VCV Library - trowaSoft cvOSCcv for OSC messages. there is also VCV Library - TheModularMind OSCelot

midi ITB generally works fine, and I have great results loading Rack as VST inside Reaper, modulations of any kind are possible