How could GP Script be used to emulate brass voicing?

I quote from a post in a keyboard player forum:

The Roland Fantom G ARX-03 Expansion Board had a 3 piece horn patch that would automatically appropriately split the voicings between the 3 instruments (Trumpet/Tenor Sax/Trombone) when you play a chord, but sounds all three instruments when you play a single (unison) line.

Question for people with deep experience with writing GP Script programs (I don’t count, I just build and evolve the language as needed but my own musical needs don’t require much in the way of scripting beyond the AutoSustainer and finger tapping)

Could Roland’s algorithm be implemented easily with GPScript? If not, what’s missing that would make it easy?

1 Like

Very interesting use case.

Maybe a note on event which has a parameter of a note array and a 2nd parameter how many notes are played at the same time,
Question: what is the same time ?

1 Like

I would try to set a short timer threshold and a counter for note on messages, which should determine if it is a single note or a chord.
If it’s a chord then i would set a flag that every new note will be played in “chord mode”… until no more notes are played, then the single note mode will have it’s chance again.
I’m not sure though if this would actually work like intended, but that’d be my first sketch for it.

1 Like

I started to write such a Scriptlet, but that’s not that easy to make something clever and not to tricky. I also wanted to have the instruments still “ordered” from the highest to the lowest note and I changed several time my strategy in situation where I keep playing notes in a chord and change others. I was close to have something nice, but I stopped programming all Scriptlets sending midi notes because of the midi notes not sent in one of my Scriptlet. I also started Scriptlet which modifies the split point by following the hands. As soon as I can figure out why some MIDI notes are not sent, I will go on programming this Scriptlets, but for now it is too dangerous for me.

It might be overkill but I was going to look into Divisimate which is used for orchestral arrangement to send midi to up to 32 individual instruments on separate channels. They have some templates on their website at


Don’t some of the horn plug in’s do this already (I thought Session Horns did from NI and I figured others might as well). Maybe they only do the first part.

Would be a cool idea for sure though.