Clear all

Remote Loading of Sounds for Live Play

3 Posts
2 Users
2 Reactions
Eminent Member
Joined: 4 years ago
Posts: 43
Topic starter  

It would also be great to have Control Bank Changes that can be tied to CC Settings for quick selection.

Similar to how in Omnisphere you can assign keys or CCs to select sounds.

What would be ideal is if we could set via text file MSB Selection to give us a wide range instruments.  

With the upcoming Unify feature of Keyboard splits and crossfades per patch this could open a really big world of live playing.  


MIDI Program Change — Allow Unify sounds to be mapped to MIDI Program Change messages, like those transmitted by dedicated Patch-selection buttons on keyboard controllers.

MIDI Note Learn — Allow Unify to select specific sounds via any key on your MIDI controller.

I would love to be able to have a user file where I could have my predetermined patches, assign them to MIDI control codes and pull them up for easy reference.
To clarify I pulled some info about BANK select off of Yamaha's website (I have a YAMAHA CVP-809 with the Genos engine)
Bank Select is a two byte Control Change (cc) message - a MSB (most significant byte) and a LSB (least significant byte) these two Control Change messages each will have a value. This value identifies the bank. Messages will be between 000 and 127. The Bank Select information is followed by a Program Change number (also a number between 000 and 127)


The format is "xxx-yyy-zzz"

'xxx' is the MSB value
'yyy' is the LSB value
'zzz' is the Program Change value

All normal GM sounds are in MSB = 000, LSB = 000

The GM Drum kits are in MSB = 127, LSB = 000

So a Program Change message in a sequencer that is:
000-000-000 will recall the GM bank piano

The long form for the GM piano would be:

MSB Control Change 0, value 0
LSB Control Change 32, value 0
Program Change 0

A Program change message in a sequencer that is:
127-000-000 will recall the GM Drum Kit

The long form for the GM Drum Kit would be:

Control Change 0, value 127
Control Change 32,
value 0 Program Change 0

For example, In Yamaha synthesizers with Preset Banks, User Banks, Preset Drum Banks, User Drum Banks, etc. you will find they follow this format:
PRESET 1 _ 063-000 (program change 000-127)
PRESET 2 _ 063-001
PRESET 3 _ 063-002
PRESET 4 _ 063-003
PRESET 5 _ 063-004
PRESET 6 _ 063-005
PRESET 7 _ 063-006
PRESET 8 _ 063-007
USER 1 _ 063-008
USER 2 _ 063-009
USER 3 _ 063-010
USER 4 _ 063-011
PRESET DRUM 063-032 (program change 000-063)
USER DRUM _ 063-040 (program change 000-031)
USER SAMPLE 063-050 (program change 000-127)
MIXING VOICE 063-060 (program change 000-127)
GM Normal _ 000-000 (program change 000-127)
GM Drum _ 127-000 (program change 000)


Illustrious Member Admin
Joined: 5 years ago
Posts: 4452


MIDI bank-select/program change support with text-file based custom banks is coming in the next Unify release! If you'd like to be a beta-tester, please email John at and mention your interest in MIDI program-change specifically.

Eminent Member
Joined: 4 years ago
Posts: 43
Topic starter  


I sent John an email last week to let him know.

I'd definitely be glad to help test.