Hello all,
I want to send controls for multiple fx-parameters in Reaper with a single OSC-message. Controls for multiple parameters in reaper are defined like:
/track/1/fx/2/fxparm/x1,x2,x3,x4/value y1 y2 y3 y4
where xn are the parameter index and yn are the assigned values. I know that commas in PD usually can not be used in this way.
Is there any workaround?
Thanks in advance,
Patrick
Hi,
usually, you can escape commas in symbols with backslashes, e. g.:
[symbol /x1,x2,x3,x4( -> [list fromsymbol] -> [print]
will give you the following ASCII values:
47 120 49 44 120 50 44 120 51 44 120 52
(44 is the comma)
When I try to use the same string as an adress pattern for [oscformat], I get the following result:
47 120 49 92 44 120 50 92 44 120 51 92 44 120 52 0
Each comma is prepent by a backslash (92), which is not what we want.
I get the same result with [mrpeach/packOSC], btw.
Please file a bug report!
Christof
On 21.05.2020 11:11, Patrick Heidegger via Pd-list wrote:
Hello all,
I want to send controls for multiple fx-parameters in Reaper with a single OSC-message. Controls for multiple parameters in reaper are defined like:
/track/1/fx/2/fxparm/x1,x2,x3,x4/value y1 y2 y3 y4
where xn are the parameter index and yn are the assigned values. I know that commas in PD usually can not be used in this way.
Is there any workaround?
Thanks in advance,
Patrick
Pd-list@lists.iem.at mailing list UNSUBSCRIBE and account-management -> https://lists.puredata.info/listinfo/pd-list
On Thu, May 21, 2020 at 5:19 AM Patrick Heidegger via Pd-list pd-list@lists.iem.at wrote:
Hello all,
I want to send controls for multiple fx-parameters in Reaper with a single OSC-message. Controls for multiple parameters in reaper are defined like:
/track/1/fx/2/fxparm/x1,x2,x3,x4/value y1 y2 y3 y4
where xn are the parameter index and yn are the assigned values. I know that commas in PD usually can not be used in this way.
Is there any workaround?
If you want to send y1 to/track/1/fx/2/fxparm/x1 and y2 to /track/1/fx/2/fxparm/x1x2 etc. , just make four separate messages like /track/1/fx/2/fxparm/x1 y1 They could be in a bundle together. If you want to send all the ys to each of the four endpoints then it should be written* : /track/1/fx/2/fxparm/{x1,x2,x3,x4} y1 y2 y3 y4 ...which is problematic in Pd because of the way text input is interpreted as TCL at some points, so again it's easier to make four separate messages. In a bundle they will have a timestamp so they will act simultaneously.
Martin
*http://opensoundcontrol.org/spec-1_0 "OSC Message Dispatching and Pattern Matching"
Thank you for the response.
The problem is, that I need to send (and constantly update) 24 different parameters in real-time. I tried the same before using midi, which functioned without any noticeable delay.
However, OSC can is able to transmit the data more accurate due to limited bit-depth of midi.
Therefore, my idea was to put all 24 messages into one.
I am not quite sure what you mean by sending them “in a bundle together”. In my patch now, every message gets created separately but “at the same time” (one after another according to pd signal flow).
kind regards and thank you in advance
Patrick
On 21.05.2020, at 23:44, Martin Peach chakekatzil@gmail.com wrote:
On Thu, May 21, 2020 at 5:19 AM Patrick Heidegger via Pd-list pd-list@lists.iem.at wrote:
Hello all,
I want to send controls for multiple fx-parameters in Reaper with a single OSC-message. Controls for multiple parameters in reaper are defined like:
/track/1/fx/2/fxparm/x1,x2,x3,x4/value y1 y2 y3 y4
where xn are the parameter index and yn are the assigned values. I know that commas in PD usually can not be used in this way.
Is there any workaround?
If you want to send y1 to/track/1/fx/2/fxparm/x1 and y2 to /track/1/fx/2/fxparm/x1x2 etc. , just make four separate messages like /track/1/fx/2/fxparm/x1 y1 They could be in a bundle together. If you want to send all the ys to each of the four endpoints then it should be written* : /track/1/fx/2/fxparm/{x1,x2,x3,x4} y1 y2 y3 y4 ...which is problematic in Pd because of the way text input is interpreted as TCL at some points, so again it's easier to make four separate messages. In a bundle they will have a timestamp so they will act simultaneously.
Martin
*http://opensoundcontrol.org/spec-1_0 "OSC Message Dispatching and Pattern Matching"
On 5/26/20 9:37 AM, Patrick Heidegger via Pd-list wrote:
I am not quite sure what you mean by sending them “in a bundle together”.
a "bundle" in OSC is a set of OSC-messages that are "bundled" together into a single network package and that happen at the "same logical time" but one after each other (in the order of appearance).
check out the [packOSC] help-patch on how to create such bundles.
gfmst IOhannes