Kyma Forum
  Tips & Techniques
  Send Program Changes to VCS over OSC

Post New Topic  Post A Reply
profile | register | preferences | faq | search

next newest topic | next oldest topic
Author Topic:   Send Program Changes to VCS over OSC
Lowell Pickett
Member
posted 11 July 2010 17:09         Edit/Delete Message   Reply w/Quote
So, I've been trying to get this right - but could someone just tell me what the proper OSC message format would be to control presets in the VCS? Specifically, I have a big "Roll the Dice" button in one of my TouchOSC templates - just trying to send MIDI PC(128) - do I have to use any of this kind of stuff? {0x00, 0xC0, 0x80, 0xFF}? I'm having some MIDI syntax/OSC grammar confusion...

I like diving directly into the (be)slime and avoiding any OSCulator or Paca/MIDI usage - trying to keep things simple, you know...

All my other OSC parameter controls are working beautifully in bi-directional bliss - now I want to see all my bright and colorful templates jump around when I hit this currently non-functional button... I assumed it did, but does the VCS support program change over OSC?

Thanks in advance,

Lowell


IP: Logged

Lowell Pickett
Member
posted 11 July 2010 18:41         Edit/Delete Message   Reply w/Quote
My current work around: I have an iPad running TouchOSC directly in to the slime - then an iPod Touch (also running TouchOSC) handling VCS program changes through OSCulator - it works well and it's kinda nice like this - but still, it would be good to know how to handle this more directly without OSCulator... just one less file to open and one less program to install/support.

IP: Logged

SSC
Administrator
posted 13 July 2010 15:26         Edit/Delete Message   Reply w/Quote
I think you need to use 0x7F, since Kyma (and most other programs) use program change numbers one larger than what is sent actually by MIDI.

So, you could use:

/lowellIPod/midi,m {0x00, 0xC0, 0x7F, 0xFF}

to roll the dice.

IP: Logged

Robert Ponto
Member
posted 31 July 2010 18:28         Edit/Delete Message   Reply w/Quote
Dear Lowell,


I have a few questions about this. . .

1. Were you finally able to implement this so you could change presets from TouchOSC (on your iPad)? Or did you continue to use your iPhone for this task?

2. What was the precise syntax you ended up using for "rolling the dice"?

3. Where, exactly, did you place the MIDI message in the TouchOSC button object? In the button's "OSC" field (after unchecking the "auto" checkbox)? Or does it go somewhere else?


Sorry for all the questions but I'm a bit fuzzy about this.


Cheers,
Bob

IP: Logged

Lowell Pickett
Member
posted 30 August 2010 17:28         Edit/Delete Message   Reply w/Quote
Actually...

This has been driving me nuts. I come back to it for an hour here and there, but as of now, I have been unable to send raw midi data from TouchOSC. Unfortunately, the variations I've tried of the above SSC possible solution have been unsuccessful.

I'm sure it's just a matter of proper syntax. I notice that in OSCulator, raw midi over osc gets labeled as just that - raw midi. Unfortunately, this doesn't allow me to see what the syntax of those messages are and I've been getting very confused by the online documentation @ http://opensoundcontrol.org/

I have been able to work around this for every other parameter in Kyma because it can be described and accessed without MIDI messages in a standard O/S/C style format - but a MIDI program change is the only way to control presets in the VCS that I'm aware of (unless it's vcs/something/else ?)

There are no text based MIDI to OSC translators that I can find - although it would make a nice little app for these transitional times - kinda like the ones that convert delay times from beats to milliseconds. At this point, I would be grateful for just a chart of OSC-ready MIDI program change messages 1-128 on channel 1. I've seen it done - the Delora Apps for example must be sending these messages - so I know it's totally possible...

Any other good references?

IP: Logged

SSC
Administrator
posted 30 August 2010 18:03         Edit/Delete Message   Reply w/Quote
/preset,i <programNbr>

Can touchOSC send integers? Or floats only?

**If it can send floats only, then you could have touchOSC send a continuous controller value (0,1) and use it in the Value field of a SoundToGlobalController and scale its value to the range of program numbers you wish to select (and round to an integer). Set the GeneratedEvent to: !ProgramNumber. For example:

(!Value * 30) rounded

**Alternatively, you could feed your Sound into an InterpolatePresets and use touchOSC to send the Interpolate value.

[This message has been edited by SSC (edited 30 August 2010).]

IP: Logged

Lowell Pickett
Member
posted 31 August 2010 11:44         Edit/Delete Message   Reply w/Quote
I think TouchOSC can do integers - you can alter the widgets to send value ranges other than just 0-1, but I feel just fine when I'm floating

I'm going to get global with it and try to work it out - thanks for the tips.

By the way, the reason the raw midi stram wasn't working: 'In TouchOSC, you can't send messages with a "MIDI" typed argument.'

Thanks Camille for taking me to school - I was trying to get something to work that was never going to. I - uh - should have taken a closer look at the documentation...

IP: Logged

Lowell Pickett
Member
posted 01 September 2010 02:26         Edit/Delete Message   Reply w/Quote
TriggeredSoundToGlobalController worked great - now it seems so obvious... oh well

I made a button in TouchOSC, used 'Esc' to make it the input of the Trigger field, made !ProgramNumber the generated event, and set value to 128. Instant dice roller button...

I can imagine some good ways to get the rest of my Program Changes worked out now - thanks!

IP: Logged

Lowell Pickett
Member
posted 03 September 2010 13:24         Edit/Delete Message   Reply w/Quote
Even Better...

In TouchOSC you can set what value each button sends - make them each From:0 (they have to return to 0 in order to send a trigger) To: <the preset number you desire> - then, name all the buttons the same: /Program/Change (or something else, but be consistent)

Using 'TriggeredSoundToGlobalController':
Trigger - !osc_Program_Change
Value - !osc_Program_Change
GeneratedEvent - !ProgramNumber

One Global Controller Prototype to handle all preset changes - but you have to build a lot of buttons in TouchOSC - or scale faders and label them the same...

IP: Logged

All times are CT (US)

next newest topic | next oldest topic

Administrative Options: Close Topic | Archive/Move | Delete Topic
Post New Topic  Post A Reply

Contact Us | Symbolic Sound Home

This forum is provided solely for the support and edification of the customers of Symbolic Sound Corporation.


Ultimate Bulletin Board 5.45c