"Filter" Certain Program Change messages?

mattz

2015-06-30 20:49:30

I’m hoping there is a command for this: Forward all Channel 14 Program Change messages to Port X, except Programs Changes 9,10, 19, 20, 21, and 22. (These PC messages have some additional things I need to do.)

With my limited programming skills, I’m looking at having to make a translator for every Program Change, plus additional special translators for the programs listed above. Is there an expression for “if Program Change is anything but (9,10,19,20, 21, 22), do this, but for for those special cases, do this?

I’m hoping I can cover all the NOT 9,10,19,20 with one Translator (~120 Program Changes!), and can just make the special ones. (Which I’ve already done, actually. And I’ve manually made about 20 for the regular program changes. There’s gotta be a better way!)

Thanks!

DvlsAdvct

2015-06-30 21:25:36

Hi mattz

What you want to do is definitely possible. What you would need to do is create a translator that listens for all program change messages, but ignores those individual ones. It would look like this:

Code: Select all

Translator 1: Program Change
Incoming Message: CD pp
Rules: if pp==9 then exit rules, skip outgoing action
if pp==10 then exit rules, skip outgoing action
if pp==19 then exit rules, skip outgoing action
if pp==20 then exit rules, skip outgoing action
if pp==21 then exit rules, skip outgoing action
if pp==22 then exit rules, skip outgoing action
Outgoing Action: CD pp
Does that make sense?
Jared

mattz

2015-06-30 22:34:03

Yes! Will try when I get home. I was trying some "If" type expressions and kept mucking it up--it might have been syntax; I wasn't using ==.

Also I see that I double posted; if I cannot do it please feel free to delete the extra thread. Thank you

mattz

2015-07-01 15:30:07

Worked! Thanks again.

It's the old classic: in the time it took me to type out the post, I could have done it all manually. But it's always better to learn. Thank you.

DvlsAdvct

2015-07-01 20:56:39

The syntax throws everybody off. We're around just for questions like these :)

J