freqPhaseMod: TouchDesigner Component & Demos
This month's Digital Snippet is a continuation of the topic from last month: using GPU shaders to emulate the behavior of an analog video oscillator being modulated by an external video source. I did a bit of a technical deep-dive, and though there were a lot of illustrations, the greatest fun of these effects comes from interacting with them in real-time. So I've created two ways to do so...
TouchDesigner Component
For my own use in future live performances, and also to share with you all, I created a .tox component that wraps my shader code into a reusable "module" inside TouchDesigner. If you haven't heard of TouchDesigner, it is a computer application that lets you build signal chains for generative visuals and sounds with a node-based interface. It has a bit of a learning curve, but it's a very flexible tool that I've been finding increasingly useful in my audiovisual experiments.
I called the component freqPhaseMod, which stands for frequency + phase modulation. I tried to make it as straightforward as possible, with a number of parameters you can change with sliders or animate with external modulation. You can feed it an input from a Texture Operator (called a "TOP" in TouchDesigner lingo), and it will output a texture that you can record or send elsewhere. It automatically adapts to the resolution of the input. I created a demonstration video in which I go through all of the settings and show what it can do:
Even if you don't use TouchDesigner, you might find this video interesting. It contains some output examples at the beginning, and some original music, and me narrating in a calming, somewhat robotic voice. Also, it was fun to make.
If you're an AV Club member, you can download and use this component in your own TouchDesigner projects! The file download link is at the very bottom of this Digital Snippet.
Meanwhile, there is also a...
Web Demo
Not everyone uses TouchDesigner, so I wanted to provide another way to explore these video effects without needing to download anything. Most people already have a web browser and a webcam, and you can run shader code on the web as well. So, I was able to create an interactive web demo version of freqPhaseMod! A couple of caveats:
Additionally, this version of freqPhaseMod is more limited compared to the TouchDesigner component. It only works at a specific resolution, and only works with the camera built into your device.
Since I like to blur the source videos I feed in, I built a blur function into the web version, and a function to save a still image of the output if you want to. I also added some presets so you can switch between different settings that I thought were cool!
You can try the web demo yourself at this link: lab.palomakop.tv/freqphasemod

It lives in my lab (lab.palomakop.tv) because that's where I put weird, experimental web things that are neat when they work, but come with some disclaimers. So now this demo is there, among other things that can be explored in a text-adventure inspired interface.
Between the TouchDesigner component and the web demo, I hope at least one of these gives you the ability to try out these video oscillator effects for yourself!