Skip to main content
OSC Structure Export sends Baryon’s live modal structure out of Baryon Desktop as OSC data. It is an outbound data stream: Baryon -> external receiver. Use it when you want TouchDesigner, Max, Resolume companion patches, or custom software to build its own geometry, particles, lights, shaders, or instancing from Baryon’s audio-derived modal structure.
This is separate from Parameter Automation. Parameter automation is inbound control: external tool -> Baryon on /baryon/control/<key>. Structure export is outbound structure data: Baryon -> receiver.

Defaults

Structure export does not use OSCQuery or Bonjour in v1. Those discovery tools belong to parameter automation. For structure export, set the receiver host and port manually.

Use OSC Data Out

  1. Open Baryon Desktop in Performer Mode.
  2. Open Control I/O.
  3. In OSC Data Out, leave Host as 127.0.0.1 for a receiver on the same machine.
  4. Leave Port as 9000, or choose the UDP port your receiver listens on.
  5. Turn on the OSC Data Out switch.
  6. Start live input in Baryon. The OSC Data Out counter should begin showing sent frames.
  7. Adjust Modes only if your receiver needs fewer or more modal entries.
Syphon and Spout remain the pixel-output path. OSC Data Out can run alongside them: use Syphon or Spout as the rendered image reference, and OSC Data Out as the receiver-side structure stream.

TouchDesigner Structure Monitor

Download the TouchDesigner structure monitor: baryon_osc_structure.tox Use it like this:
  1. In Baryon, open Control I/O, enable OSC Data Out, and keep 127.0.0.1:9000 for local TouchDesigner.
  2. Drag baryon_osc_structure.tox into a TouchDesigner network.
  3. Select the parent baryon_osc_structure component.
  4. Keep OSC Data Port at 9000 and Active on.
  5. Start live input in Baryon.
  6. Select baryon_osc_structure and press i to go inside the component, then watch the frame, global, coverage, material, modes, colors, and raw DATs update.
To view a table, right-click one of those DAT nodes and choose View. Start with global for energy signals, modes for the modal entries, and colors for per-mode RGB values. raw is mostly a debug table; it shows the incoming OSC bundle as received, so it can look like a wall of numbers. The useful monitor tables are: The colors DAT is a TouchDesigner-friendly view derived from exported modal material colors. Use it when Baryon is in spectral color mode and you want a compact per-mode palette table for instances, ramps, materials, or shaders. The monitor is a reader, not a controller. It helps you inspect the OSC Data Out stream before you wire the same data into instancing, geometry generation, materials, or shader uniforms. To control Baryon from TouchDesigner, use the parameter automation control surface instead. If you are working from a Baryon source checkout, you can rebuild the .tox from TouchDesigner Textport:
The builder saves baryon_osc_structure.tox beside the script and under docs/public/downloads/touchdesigner/. The monitor layout is generated from Baryon’s canonical OSC Data Out structure schema at build time; it is not a runtime schema-discovery protocol. Before publishing an updated .tox, run:
For a manual TouchDesigner setup on the same Mac:
  1. In Baryon, enable OSC Data Out and keep 127.0.0.1:9000.
  2. In TouchDesigner, create an OSC In DAT.
  3. Set the OSC In DAT network port to 9000.
  4. Start audio or live input in Baryon.
  5. Watch incoming /baryon/... rows in the OSC In DAT.
  6. Use DAT-to-CHOP, callbacks, or your own Python logic to turn the rows into geometry, instances, materials, or shader uniforms.
For TouchDesigner on another computer:
  1. Find the TouchDesigner computer’s LAN IP address.
  2. In Baryon, set Host to that TouchDesigner IP address.
  3. Keep Port aligned with the TouchDesigner OSC In DAT port, usually 9000.
  4. Allow UDP traffic through the receiver machine’s firewall.
You do not need the parameter-automation LAN switch for outbound structure export. That switch advertises and receives inbound parameter-control OSC. For structure export, Baryon sends directly to the host and port you enter.

Terminal Smoke Test

Before opening TouchDesigner, you can prove the stream with a terminal receiver:
Then enable OSC Data Out in Baryon with Host 127.0.0.1 and Port 9000. The receiver prints frame sequence, source state, authority, global energy signals, and the strongest modes. Use -- --port <port> if you changed the Baryon port:

OSC Messages

Baryon sends /baryon/hello when the UDP port is ready, then sends self-contained frame bundles while audio frames are available. Disable sends a best-effort clear message. Common addresses:

Value Semantics

Exported values are normalized modal/control signals, not calibrated acoustic measurements. For example, coefficient is a normalized modal amplitude, coefficientEnergy is that coefficient squared for visual weighting, and RGB values are material hints. modeCount = 0 does not always mean silence. A frame can be active but bandwidth-limited, in which case the coverage and authority messages explain why no modes were exported.

Troubleshooting