Re: Correct midi on expression from menu
Posted: 23 Mar 2013 11:05
Hi
There is a bit of info to be gleaned from the User Guide and the Appendix MIDI section that I added in the last update.
Basically they mirror the standard MIDI message format so checking any MIDI standards document should help as well . . .
Yes that 144,60,127 is a Note On message on Channel 1, note 60, velocity 127 -
If you look at the MIDI mapping panel, or OnMIDI scripting you see a '90' before NoteOn, B0 before Control Change these are the Hex values - 0x90 ==144 meaning NoteOn Channel1 - 0x91 (145) would be Midi Channel 2 etc . . .up to 0x9F for ch 16.
Thought something was a bit odd there -re the 144,60,127 - whilst that is the way a MIDI message gets done at low level and as a MIDI message for midiout() the OnMIDI function actually packages it a bit more human readable . .
so executing OnMIDI -NoteOn 0-127(notes) 1-16(Midi channel) and receiving a note on 60, velocity 127, channel 1 will return {60,127,0} being Note,Velocity, Channel(0-15) - at machine level its 0-15 but for human consumption it is usually 1-16 . . .
So re the Open a Container maybe pick a low Note number to use then a script execute OnMIDI NoteOn, over a limited note range, as many notes as things you want controlled and then go from there with the scripting if(MIDI_ARGS[0]==24) show(Container,1) etc
It really comes down to representations of essentially the same data - you get the hang of it all through a bit of research and experience - mind you I was hacking MIDI way back in the day on Yamaha FB01, and in the late 80's it was an awful lot harder . . .
Hope that makes some sense, and doesn't confuse too much . . . .
MM
There is a bit of info to be gleaned from the User Guide and the Appendix MIDI section that I added in the last update.
Basically they mirror the standard MIDI message format so checking any MIDI standards document should help as well . . .
Yes that 144,60,127 is a Note On message on Channel 1, note 60, velocity 127 -
If you look at the MIDI mapping panel, or OnMIDI scripting you see a '90' before NoteOn, B0 before Control Change these are the Hex values - 0x90 ==144 meaning NoteOn Channel1 - 0x91 (145) would be Midi Channel 2 etc . . .up to 0x9F for ch 16.
Thought something was a bit odd there -re the 144,60,127 - whilst that is the way a MIDI message gets done at low level and as a MIDI message for midiout() the OnMIDI function actually packages it a bit more human readable . .
so executing OnMIDI -NoteOn 0-127(notes) 1-16(Midi channel) and receiving a note on 60, velocity 127, channel 1 will return {60,127,0} being Note,Velocity, Channel(0-15) - at machine level its 0-15 but for human consumption it is usually 1-16 . . .
So re the Open a Container maybe pick a low Note number to use then a script execute OnMIDI NoteOn, over a limited note range, as many notes as things you want controlled and then go from there with the scripting if(MIDI_ARGS[0]==24) show(Container,1) etc
It really comes down to representations of essentially the same data - you get the hang of it all through a bit of research and experience - mind you I was hacking MIDI way back in the day on Yamaha FB01, and in the late 80's it was an awful lot harder . . .
Hope that makes some sense, and doesn't confuse too much . . . .
MM