-
Still-Learning-Linux
posted in patch~ • read moreHere is a patch I made to link TouchOSC on an iPad/iPod touch with Ardour (the best DAW that I know of)
http://www.pdpatchrepo.info/hurleur/Ardour-TouchOSC_Patch.pd
-
Still-Learning-Linux
posted in technical issues • read moreI'm trying to control Ardour with TouchOSC. TouchOSC always outputs OSC messages followed by a space and then a value.
example
/ardour/transport_stop 0Ardour only wants to see
/ardour/transport_stopHow can I strip that trailing value in Pure Data?
I've only just started playing with PD so detailed info would be handy. I currently have this set up.import mrpeach
udpreceive 3819
|
unpackOSC
|
printThis obviously prints the messages coming in on port 3819 and is working nicely.
I'd like to check if the message begins with /ardour then strip the trailing value and resend the message out another port.I'm pretty sure I can figure out the resending, I just don't know how to manipulate the message.
Thanks for any help!
-
Still-Learning-Linux
posted in technical issues • read moreyou can find my patch in the patch~ forum
-
Still-Learning-Linux
posted in technical issues • read moreMaelstorm, your last suggestion does what I want. Only some of the OSC commands for ardour actually use an argument, so what I'm doing is using routeOSC to catch those and handle them separately. All other commands run through my filter which strips the argument and sends it on its way.
You've gotten me well on my way. Thanks for your help!
I'll try to post my patch when it is done

-
Still-Learning-Linux
posted in technical issues • read moreOne inelegant solution would be to use routeOSC to determine which command came in and then compose the correct one to send. But that doesn't scale well and limits the usefulness of my patch.
This does work but is not what I want as it only supports two commands.
-
Still-Learning-Linux
posted in technical issues • read morethanks for the quick reply!
for this message
/ardour/transport_stop 0
it prints 0for this message
/ardour/transport_stop 1
it prints 1