Nodes
Integration nodes
Bridge a Voice on the canvas to external synthesis — SuperCollider, Max, Pure Data, or anything that listens for OSC over UDP.
| Node | Inputs | Outputs | Description |
|---|---|---|---|
| OSC Send | voice voice text host (default: 127.0.0.1) number port (default: 57120) text address (default: /grafer/note) |
voice (pass-through) | Send the wired Voice as OSC messages over UDP. Each note becomes one message of the form <address> <onset_s:f> <duration_s:f> <pitch_mc:i> <velocity:f>. The dedicated editor exposes the Send button, host/port/address fields, a live preview of the message count, and a copy-paste SuperCollider receiver snippet. Host is restricted to loopback and private-network ranges by default (override with OSC_ALLOW_ANY_HOST=1 server-side). The voice passes through unchanged so the OSC node can sit inline in a chain. |
SuperCollider receiver snippet — paste once at boot, then click Send on any OSC Send node:
OSCdef.new(\graferNote, { |msg|
var onset = msg[1], dur = msg[2], pitchMc = msg[3], vel = msg[4];
SystemClock.sched(onset, {
Synth(\default, [
\freq, (pitchMc / 100).midicps,
\sustain, dur,
\amp, vel,
]);
nil
});
}, "/grafer/note");
The same pattern works in Max (udpreceive 57120 → route /grafer/note) and Pure Data (netreceive -u -b 57120). Microtonal pitches in midicents (6000 = C4, 6050 = quarter-tone above C4) survive intact — cents-level resolution from Grafer's tuning system arrives at the synth as a continuous value.
Wire these nodes into a piece of your own.
Create a free account14 days of Composer Pro, no card needed. Every account opens with the Examples folder.