-
-
Notifications
You must be signed in to change notification settings - Fork 254
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Pattern control of OSC paths #557
Comments
Reference for Bitwig OSC paths: https://github.com/git-moss/DrivenByMoss/wiki/Open-Sound-Control-(OSC) |
I jmplemented it without the dollar so |
Some further reflections on this issue:
Ideally customTarget = OSCTarget {
[...],
oPaths = [
"/track/{track}/{action}" ,
"/track/{track}/clip/{clip}/{action}",
"/master/{action}/{value}"
],
oShapes = [
Just [("raw", Just $ VF 0)],
Just [],
Just [],
],
[...]
} |
Maybe it would be best for the path to become part of the shape, with each shape given a name, e.g.:
|
In practice the shape name could then be used like:
I think there would be a better name for this parameter than |
I'd probably make a datatype for this, so a shape would be made with e.g. |
This looks good.
I do agree. To me Another option would be to make it a parameter of the pattern:
There's something quite logical about this, but I'm not sure if there would be other consequences. |
Here's a more complete example of current workaround: https://gist.github.com/jarmitage/100ec087997100b448f173a0258d1885 |
Here's the current datatype
It mixes properties of the network connection with properties of the messages that are sent. Here's a disentangled version:
The interface could look something like this:
|
I think we'll probably always want a separate scheduler for each 'shape'. So in terms of efficiency this doesn't buy us anything so far, apart from saving on network connections. |
Well I guess this sort of thing would also be possible:
Currently all the patterns get combined into one 'stack', and while that's convenient in terms of the code, it probably isn't more efficient. |
Ok this is really interesting! I will try to rewrite my example from above using this and see what comes up. Edit: couldn't find time for this. If it's possible to get a prototype running I can try it out. |
Moved to #638 |
(in case anyone is reading this and is confused; conversation is continuing over at #638, but both issues are remaining open for now) |
A lot of systems put patternable information in the OSC path, for example I think
/ch/1/mix/1/level
would set levels on channel 1 bus 1 on Behringer's X-AIR protocol, and Bitwig does similar things. It'd be good to be able to pattern these parameters.One approach would be supporting substitution in OscShape's, e.g. with the above example:
oPath = "/ch/${channel}/mix/${bus}/level
The text was updated successfully, but these errors were encountered: