You’ve got something on the screen from one program – an animation, 3D generative eye candy, video whatever. You want to have that texture working somewhere else, so you could, say, mix it with some video clips in your VJ app. Intuitively, you want to just be able to “pipe” the texture from one place to the other, on the graphics card, without performance overhead.
Macs, thanks to the brilliant open source Syphon framework, can do this, via the OpenGL graphics framework. It’s something we talk about on this site a lot. But Windows machines, using a mix of OpenGL and DirectX APIs to render video and 3D, and their own drivers and OS-level graphics support, have been left out. That is, until now.
Back in March, I spoke to ArKaos about how they’re making inter-app video work. On the Mac, they use Syphon. But on Windows, they showed me for the first time an implementation using DirectX. That got me excitedly thinking about vvvv, the immensely-powerful node-based, graphical environment for live visuals (among other things).
This week, vvvv has added just this feature in a beta. If you’re using multiple copies of vvvv, it lets you share textures between them, as well as – in a bonus – the ability to run a video texture across multiple heads of a multi-head output (for multiple projectors, etc.). But it also hints at a new ecosystem of Windows apps that share textures, so, for instance, you might take advantage of new ArKaos video mapping capabilities and video mixing alongside some elaborate patch you built in vvvv. I had wrongly assumed such capabilities would be limited to DirectX-based apps, but an OpenGL bridge could be theoretically possible (for apps like Resolume Avenue, which use OpenGL rather than DirectX).
All the details of how to use this beta release, and what this functionality means for users and developers, are detailed in a blog post:
cross-process texture sharing, depth rendering [vvvv.org blog]
There are other improvements in this latest build, bringing still more enhancements in vvvv’s frenetic update cadence:
- Make subpatches quickly: select nodes, CTRL-G, subpatch, done.
- Easier vector nodes, and other more usable node tweaks.
- Android phone remote control.
- Video sync over a network.
Network video sync is also a deeply exciting possibility.
But I imagine the big headline for Windows users – and the one (cough) other Windows developers may want to investigate – is Syphon-like video sharing on a platform that’s not the Mac.
All the news on the beta build for users and developers:
And remember, it’s pronounced “v-4” (largely in Germany, though oddly not “v Vier”). Or, “v, v, v, v” (everywhere else, or to avoid confusion with Edirol mixers). Or, my personal favorite, “vvvvvVVVVVVvvvvvv vvvvvv.”
Thanks to Kyle McLean for the tip!