Skip to content
Thrivbe
← All experiments
In progressStarted October 25, 2026Updated October 25, 2026

Can we take downloaded TouchDesigner templates, make every one react to sound and body movement, and run them all from one shared control bar?

Six TouchDesigner Pieces for a Cabin Trip, All Driven by Mic and Webcam

Partly, still in progress. Six downloaded TouchDesigner templates were scanned for unsafe operators, then rebuilt so a mic and webcam drive them, with one shared Touch Control bar. Five were kept, one awaits a verdict. A brightness cut-off could not find a body in a dark cabin, so one piece learns an empty-room background.

  • TouchDesigner
  • Python
  • Webcam and microphone input

Relevant services: Thrivbe AI

Hypothesis

Downloaded TouchDesigner templates look good on their own, but they only play back. For a cabin trip, where the pieces run live on a screen in a dim room, we wanted each one to respond to the people in front of it. If every piece takes the same two inputs, microphone and webcam, and the same control bar sits on top of all of them, then a new piece should cost a short recipe instead of a rebuild.

What we built

  • Six pieces from downloaded templates. Moon Surface Noise, Spirograph Mandala, Parametric Metallic Spike, Sweep Text to Particles, Biomechanical Worm and Synthetic Biology Centipede. Each one keeps its original as look 00, then adds looks that bring in sound and movement.
  • A shared inputs kit. One Python module builds the Sound and Movement parameter pages and the mic and camera chains, and hands back two values (sound, movement). A piece then needs only a short recipe that wires those values into its own parameters.
  • A "Touch Control" top bar. A small local web page, shown next to TouchDesigner, with a format menu (9:16, 16:9, 1:1, 4:5), a mic toggle and a camera toggle that apply to every piece. It shows the open piece's name, and live sound and movement meters. The API behind it rejects bad requests and checks the request origin.
  • A safety scan before opening any download. All 11 downloaded files were checked for web, shell and network operators. None were found. The "eval(" matches were TouchDesigner's own param.eval(), not code execution. Two files contain a movie recorder, so we checked it was off. The originals were then set read-only (chmod 444).
  • Body detection that survives a dark room. In Sweep Text to Particles, one look turns the webcam body into cubes. A brightness cut-off did not work in a dark cabin (a lit wall behind a backlit face), so that look subtracts a slowly learned picture of the empty room, with a button to relearn it after stepping out of frame.

Learnings

  • A shared kit pays off from the second piece. Once the Sound and Movement pages lived in one module, each later piece was a short recipe, not a new build.
  • Check the mic before tuning anything. The first piece read a sound level of exactly 0. The default audio device was a pair of paired earbuds with no driver. Adding a mic device menu, defaulting to the laptop mic, and two read-only meters made the problem visible at once.
  • Calm at rest is a requirement, not a polish step. Pieces that move on their own are less interesting to watch than pieces that only move when someone makes a sound or moves. The motion floor had to go up to 0.1 to keep webcam noise from moving things on its own.
  • Brightness is a poor body detector. Subtracting a learned background worked where thresholding failed, at the cost of needing a clear empty frame first.
  • Downloaded templates may arrive broken. One showed a black screen until three fixes: a missing HDR path, a disabled trail node, and a camera not looking at the geometry.
  • The save call can hang. A project save over the control API timed out on the centipede piece while TouchDesigner sat at about 100% CPU. We saved by hand and recovered the numbered copy.

Log

  • 2026-10-25: Built or opened six pieces in one day. Four measured 60 fps and the centipede 59.4 fps. Moon Surface Noise, Spirograph Mandala, Parametric Metallic Spike, Biomechanical Worm and Sweep Text to Particles were closed as kept ("keep it all for now"). The Biomechanical Worm drew a clear "really cool". The Centipede, with a "dance with you" look that moves the whole loop to where you stand, still awaits a verdict and a manual save. Real body joints would need a pose tracker, which is the next idea. The remaining backlog is untouched: Metallic Spikes, Point Cloud, Pseudo Liquids, a MIDI piece and AI point clouds.

Talk to Thrivbe AI