From e09fbbae452de380ba0b5b9c779ebf990f9b2d76 Mon Sep 17 00:00:00 2001 From: Michael Winter Date: Wed, 1 Apr 2026 21:53:33 +0200 Subject: [PATCH] Fix OSC receiver port binding, add long attack/decay envelope --- supercollider/osc_receiver.scd | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/supercollider/osc_receiver.scd b/supercollider/osc_receiver.scd index 517caab..069c28e 100644 --- a/supercollider/osc_receiver.scd +++ b/supercollider/osc_receiver.scd @@ -4,21 +4,21 @@ s.boot; s.waitForBoot { - - // Define synth on the server (2-second ring) + + // Define synth on the server with long attack and decay SynthDef(\sineTone, { |freq = 440, amp = 0.15| var env = EnvGen.kr( - Env([0, 1, 1, 0], [0.05, 0.1, 1.85], \sin), + Env([0, 1, 0.8, 0], [2, 3.0, 3], \sin), doneAction: Done.freeSelf ); Out.ar(0, SinOsc.ar(freq) * env * amp); }).add; - + // Wait for synth to be added to server s.sync; - - // OSC handler for /freq messages + + // OSC handler for /freq messages - explicitly bind to port 57120 ~oscHandler = OSCFunc({ |msg, time, addr, recvPort| if (msg.size >= 3, { var freq = msg[2].asFloat; @@ -26,11 +26,11 @@ s.waitForBoot { Synth(\sineTone, [\freq, freq, \amp, 0.15]); }); }); - }, '/freq'); - + }, '/freq', nil, 57120); + "OSC receiver ready on port 57120".postln; "Click nodes in webapp to play".postln; - + // Keep alive while { true } { 10.wait; }; } \ No newline at end of file