From 0bfbd87bbf2d5e64be9876e575a547f720713a9d Mon Sep 17 00:00:00 2001 From: alex Date: Tue, 29 Mar 2022 16:39:52 +0100 Subject: [PATCH] try to send osc as timestamped bundle --- packages/osc/osc.mjs | 7 +++++-- packages/osc/server.js | 9 ++++++--- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/packages/osc/osc.mjs b/packages/osc/osc.mjs index 4f56b8f2..9d78f044 100644 --- a/packages/osc/osc.mjs +++ b/packages/osc/osc.mjs @@ -1,15 +1,18 @@ import OSC from './node_modules/osc-js/lib/osc.js'; import { Pattern, isPattern } from '@strudel.cycles/core/strudel.mjs'; -//import {OSC} from 'osc-js'; const comm = new OSC(); comm.open(); +const startTime = Date.now(); +const latency = 0.1 * 1000; Pattern.prototype.osc = function () { return this._withEvent((event) => { const onTrigger = (time, event) => { + console.log(time); const keyvals = Object.entries(event.value).flat(); - const message = new OSC.Message('/dirt/play', ...keyvals); + const ts = startTime + (time*1000); + const message = new OSC.Message('/dirt/play', ts, ...keyvals); comm.send(message); }; return event.setContext({ ...event.context, onTrigger }); diff --git a/packages/osc/server.js b/packages/osc/server.js index 0d5c6986..a96c2f16 100644 --- a/packages/osc/server.js +++ b/packages/osc/server.js @@ -28,10 +28,13 @@ console.log('websocket server running on port', config.wsServer.port); // listen for messages from the client osc.on('*', (m) => { - // forward message to supercollider?? + console.log("hmm!"); + const ts = m.args.shift(); const message = new OSC.Message(m.address, ...m.args); - osc.send(message); // will it even be received?? - console.log('forward:', m.address, m.args); + console.log(m.args); + const bundle = new OSC.Bundle([message], new Date(ts)) + osc.send(bundle); + console.log('forward:', bundle); }); /*