|
Post by gaggio on Nov 2, 2013 1:37:59 GMT
Hi,
first of all, great product!!
Question I've got now is about converting note on to program changes
for example note on 47 (B3) to program change 63
any help greatly appreciated.
thanks
|
|
nic
Soapbox Supremo
Troublemaker
Press any key to continue
Posts: 2,011
|
Post by nic on Nov 2, 2013 9:52:15 GMT
Hi gaggio,
You can use the stream byter to do this. Here is the rule for the above example. I think you have the notes and program changes above in hex to start with, so here goes:
# map note on B3 to PG 99 9X 43 01-7F = CX 63
This will remap the note on, so the original note is never passed on. If you want the original note to sound as well, just add +C to the end of the rule
The reason I used a range 01-7F is that sometimes note offs are sent as note ons with a velocity of zero and you don't want the note off triggering the program change.
Regards, Nic.
|
|
|
Post by steve842 on Dec 22, 2013 3:04:16 GMT
Hi Nic, I'm trying to replicate this and failing miserably. MidiVision is recognizing it correctly and reporting the program change commands so it should be working. All I want to do is switch scenes in MB with the program changes (converted from notes), but I cannot get the scenes in MB to respond properly. MB is assigned to midi channel 1 and my midi controller is connected to the MB block. It sometimes recognizes the first press and switches to the correct scene, but then it's done. # map note on C-1 to PG 98 9X 0C 01-7F = CX 62 # map note on Db-1 to PG 99 9X 0D 01-7F = CX 63 Both scenes in MB have these rules installed. I would think this would allow toggling between the two scenes when switching between the two buttons transmitting the notes referenced in the code, but it isn't working. What am I missing? Attachments:
|
|
nic
Soapbox Supremo
Troublemaker
Press any key to continue
Posts: 2,011
|
Post by nic on Dec 22, 2013 15:52:37 GMT
Hi steve482,
To make MidiBridge switch scenes via the Stream Byter there are two important ingredients that you'll need:
1. You can only generate a scene change from a ruleset if the rules are on an input (left) port in MidiBridge.
2. You have to clone the program change value
This is because the scene changer listens to all incoming messages for a scene change command before it sends the event to the module stack, so a simple remap to a program change will not cut it since it has already passed the point where the scene changer would notice it. You have to clone the message as a cloned message gets injected into MidiBridge as if it had received it on a port and thus will be seen by the scene changer
So, all you need to change in your rules is add a +C flag to each:
# clone note on C-1 to PG 98 9X 0C 01-7F = CX 62 +C
# clone note on Db-1 to PG 99 9X 0D 01-7F = CX 63 +C
As long as the Stream Byter instance with the rules above are on the input port (and the scene change channel matches the channel of your controller) you should be in business. Remember to save your current scene before trying it though or you'll lose your changes!
I'm not quite sure why it was working just once and the stopping. Maybe MidiVision is set to thru mode and MidiBridge is seeing the program change coming in on MidiVision's input port. I guess you could terminate MidiVision and see if that results in no scene change happening to verify my theory before you adjust your rules. Up to you!
Regards, Nic.
|
|
|
Post by steve842 on Dec 22, 2013 22:28:57 GMT
Bingo! And even more importantly I understand the concept of the +C now. Thanks much!
|
|
|
Post by steve842 on Dec 23, 2013 3:33:14 GMT
Ok so I thought I got it. The +C is generating the scene changes but it is also sending the note back through. For example, when I press the button while creating a binding in Loopy HD it shows the PC on the down press but then displays the original note off command on the release.
Is there any way to send the PC back through to select the scene in MB, but not the note command? I'm assuming the +B might do this, but the coding I have tried gives me the error.
|
|
nic
Soapbox Supremo
Troublemaker
Press any key to continue
Posts: 2,011
|
Post by nic on Dec 23, 2013 9:03:32 GMT
To block off both note on and off for your scene change trigger notes try:
NX 0D = XX +B NX 0C = XX +B
Place these after the two clone rules and the notes should never leave.
Regards, Nic
|
|
|
Post by steve842 on Dec 23, 2013 16:49:33 GMT
Worked perfectly, thank you,
|
|