Hey oscilloscope (+ lasers + vectrex) community!
Next update to XYscope will include an OSC demo for making it possible to export/share the wavetables created via XYscope to other software/tools since maybe it's only one part of a workflow etc etc... But it could/should also have an import!? There have been amazing tools created for a multitude of languages and environments – sooo I thought it would be great to have a small discussion in a space where markdown code-snippets can be included, to pan out what might be a format most (hopefully) can agree upon for shipping these wavetable values (array of numbers for x, y, [z] axis) that could be imported and exported from each toolkit. = IODA (International Oscilloscope Display Association!)
XYscope is made for Processing (Java), and my initial ideas were –
sending a 2D array, ie:
[[x, y], [x, y], [x, y].....]
which can then be looped through once (by default ~ 512 values), then grabbing the x and y out from that inner array of values.
this is a very compact message to send via OSC (avoiding JSON due to extra chars needed).
Or again, having a 2D array that's joining the 2 wavetable arrays in this form:
[[x, x, x, x, x.....], [y, y, y, y, y, y...]
this would allow one to first split the message into the 2 separate arrays, then loop/pass separately to wavetable inputs.
Or would it be better to be sending 2x 1D arrays, one per channel ie:
[x, x, x, x, x, x, x, x...] + [y, y, y, y, y, y, y, y....]
My concern here is if the syncing might be messed up in transmission if not part of the same message...
all depends on if all environments can handle a 2D array?
Perhaps a dash of JSON isn't so bad, ie if going with the 3rd option, something like:
{
'freq': 50,
'x' : [x, x, x, x, x, x...],
'y' : [y, y, y, y, y, y, ...]
}
Rough goals are:
- send as few chars as possible for the OSC message overhead..
- be parsable (import) and packable (export) in all languages being used in the community
I'm sure there's many other techniques, ideas out there – what are they??
@kritzikratzi @macumbista @jameshball @jestern77 + please tag folks that should join this conversation
Hey oscilloscope (+ lasers + vectrex) community!
Next update to XYscope will include an
OSCdemo for making it possible to export/share the wavetables created via XYscope to other software/tools since maybe it's only one part of a workflow etc etc... But it could/should also have an import!? There have been amazing tools created for a multitude of languages and environments – sooo I thought it would be great to have a small discussion in a space where markdown code-snippets can be included, to pan out what might be a format most (hopefully) can agree upon for shipping these wavetable values (array of numbers for x, y, [z] axis) that could be imported and exported from each toolkit. = IODA (International Oscilloscope Display Association!)XYscope is made for Processing (Java), and my initial ideas were –
sending a 2D array, ie:
[[x, y], [x, y], [x, y].....]which can then be looped through once (by default ~ 512 values), then grabbing the x and y out from that inner array of values.
this is a very compact message to send via OSC (avoiding JSON due to extra chars needed).
Or again, having a 2D array that's joining the 2 wavetable arrays in this form:
[[x, x, x, x, x.....], [y, y, y, y, y, y...]this would allow one to first split the message into the 2 separate arrays, then loop/pass separately to wavetable inputs.
Or would it be better to be sending 2x 1D arrays, one per channel ie:
[x, x, x, x, x, x, x, x...]+[y, y, y, y, y, y, y, y....]My concern here is if the syncing might be messed up in transmission if not part of the same message...
all depends on if all environments can handle a 2D array?
Perhaps a dash of JSON isn't so bad, ie if going with the 3rd option, something like:
Rough goals are:
I'm sure there's many other techniques, ideas out there – what are they??
@kritzikratzi @macumbista @jameshball @jestern77 + please tag folks that should join this conversation