Universal Waves Beta
Welcome to the Universal Waves beta. If you just found this page and are not in the TestFlight, join the Discord or write me at uw@kall.ws to get invited.
Universal Waves is a modular video synthesizer for macOS and iOS. But I think it’s a lot more. It’s a little bit like VCV Rack for LZX, but also a little bit like VDMX. There’s classic video synth modules like Ramps, Oscillators, Keyers… but also modules to load ISF Shaders, a modern media bin and a compositor. Across the whole range, you can patch anything into anything, modulating from slow LFO or audio analysis up to “video rate” for spatial instead of temporal results. And then there’s way to build a pretty custom UI for your instrument. But also, it’s a toy.
A few things Universal Waves has:
- full set of modules you would find in an LZX-style system, adapted for a digital world, taking away limitations but staying faithful to the workflow
- the ease of digital patching with automatic mult and mix, attenuverters on every connection, RGB cable bundles (that you can always open up), automatically growing and shrinking “multi” modules…
- a “friendlier” modular workflow, with purposefully designed modules and UI, compared to wonderful but less playful visual programming environments
- output any resolution, any frame rate, in sRGB or Display P3, SDR or HDR
- thanks to some clever use of Metal, you can run complex patches even at high resolutions and at ProMotion frame rate. You can also set it to PAL or NTSC if you like.
- when you patch any feedback connection, you see the cable change and get a frame count picker. Sometimes you can set it to 0 🤔.
- use HDR to actually see “voltage” values above 1, it’s really fun, but you can also just use HDR for more brightness of your normal 0-1 patch
- a set of audio reactive modules to get many different types of modulation and visuals to use in your patch. Audio itself can not be used as a normal patching signal (yet).
- load (almost) any ISF Shader, even on iOS, thanks to ISFMSLKit from VIDVOX ❤️
- super quick “Expression” language create any type of pure transform or generator, video or modulation, with control over the inputs, outputs and controls. Your module will be compiled to a shader and run as fast as anything else with the same modulation and coordinate system capabilities.
- save presets for each module type and access them from the quick add search or module header, also sync via iCloud
- patch and modify coordinate systems (I call them Ramps because analog) almost anywhere, even into your own ISF Shaders
- the ability to render out your video (of course), with the ability to render it with an audio file as input or try to find a perfect loop instead of rendering a fixed time
- like my beloved Reaktor, there is a Patch view and an Instrument view (I call Machine). You can expose any parameter, module UI like the clip bin or intermediate monitor from the patch, and then arrange it on your own surface and change between controller styles (knob, fader, crossfader, radio, dropdown…), create groups (which become pages on your phone). There are also different machine skins, so you can pick between a pro software UI, retro hardware or some kind of digital future design.
- a growing set of ready-made instruments, and guides to learn the program and video synthesis concepts
- MIDI map any control, with special care taken so pad controllers map nicely to switchers, clip launchers, loopers, etc
- Syphon in and out, via a small “Syphon Bridge” program so the main app can run inside the App Store sandbox
I haven’t figured out how to talk about it yet, but I promise you the program is more of a coherent system than this website might tell you. The places where it’s not will improve. I just wanted to get the beta out there to avoid the “v2 for myself” cycle, so let me know what clicks and what feels off. And most importantly: share what you make!