Jenfi Home-Studio

 

Le Program Change et le Bank Select

128 presets, le top !…

MIDI 30 ans Dans la norme MIDI initiale, le changement de programme permet d'accéder à 128 adresses mémoire maximum. Il y a 30 ans, en 1983, cette capacité de 128 programmes dans un synthétiseur paraissait énorme. Pour rappel, les premiers synthés MIDI avaient : 32 patches pour le Roland Jupiter 6, et 100 pour le Prophet 600 Sequential Circuits. Quant au mythique DX7 Yamaha, il plafonnait à 64 programmes (avec "Data Cartridge" de 32 prog), autant dire une misère…

Bien vite, cette capacité d'adresses de mémoire de patch s'est révélée insuffisante. C'est alors que la MMA (MIDI Manufacturers Association), en collaboration avec les constructeurs adhérents, définit en 1990 deux nouveaux contrôleurs permettant de multiplier singulièrement le nombre de banques adressables dans la première révision de la norme MIDI.

La sélection de banque MIDI

Bank No Select Aujourd'hui, les synthés, modules de sons physique ou logiciel (VSTi, AU, RTAS, AAX, etc.), autres expandeurs et multi-effets ont bien plus que 128 programmes en mémoire. Pour rester compatible avec la norme MIDI, les emplacements mémoire (ROM ou RAM) sont “découpés” en banques de 128 programmes/presets. Ces banques sont accessibles par deux contrôleurs MIDI « Control Change » (CC) dédiés appelés « Bank Select ».

Il y a 2 messages de sélection de banque :

MIDI Controller  0 = Bank Select MSB (Most Significant Byte)
MIDI Controller 32 = Bank Select LSB (Least Significant Byte)

MacTalk Attention, le message MIDI « Bank Select » doit être suivi du message « Program Change » (noté aussi PC). Tous les périphériques MIDI ne changent pas forcément de banque sans recevoir de Program Change.

Lorsque ces deux contrôleurs MIDI sont combinés — MSB et LSB —, le messages « Bank Select » permet de sélectionner 1 banque sur 128 fois 128, soit 16384 banques. Et comme chaque banque peut contenir jusqu'à 128 programmes, cela signifie que plus de 2 millions de programmes sont théoriquement sélectionnables (2 097 152 patches). Pas mal, hein !

MacTalkLes messages Bank Select (CC #0/32) sont totalement ignorés en mode GM (General MIDI).
GM Niveau 1 définit un seul ensemble de sons de 128 instruments et n'autorise pas l'utilisation du contrôleur Bank Select (CC #00 et #32). Certains générateurs sonores compatibles GM sortent du mode GM lorsque les messages Bank Select sont reçus.

Bank Select Par exemple, disons qu'un synthé dispose de 512 programmes. On peut les diviser en 4 banques de 128 programmes chacun. Maintenant, si vous voulez sélectionner le programme n°200, qui est le 72ème programme dans la seconde banque, vous devez envoyer une sélection de banque pour passer à la deuxième banque, puis envoyer un changement de programme avec la valeur 71 pour sélectionner ce 72ème programme dans la banque sélectionnée.

Le message MIDI peut ressembler à ça :

Bank Select MSB/CC00 1
Bank Select LSB/CC32 0
Program Change/PC 71

MacTalk Les adresses de programmes vont de 0 à 127. Le programme 1 est en fait à l'adresse zéro, donc on envoie la valeur 71 pour sélectionner le 72ème programme, zéro pour le premier et 127 pour le 128ème.
Ne vous inquiétez pas, les claviers maître transcodent parfaitement ça…

On fait comment sur un clavier maître ?

La mise en œuvre ou mise en pratique du changement de banque via la commande Bank Select sur un clavier maître varie peu d'un fabriquant à l'autre. Généralement, tout est bien expliqué dans le mode d'emploi. Quelques boutons sont affectés à cette fonction.

Claviers Maitre
Quelques exemples de commande Bank Select…

Et avec mes synthés ?

Voici comment les constructeurs ont utilisé le message « Bank Select » sur quelques–uns de mes synthés. Autant dire que chacun a procédé à sa manière, et qu'il ne faut pas y chercher une logique dans leur choix. Ce qui est pratiqué par un fabricant ne sera pas applicable par un autre. Et parfois c'est pareil pour les différents modèles au sein d'une même marque. Etrange…

MacTalkLes valeurs ci-dessous sont exprimées en décimal. Sortez votre calculette pour convertir en hexadécimal : 15 (dec) ≡ 0F (hexa), 64 (dec) ≡ 40 (hexa), 127 (dec) ≡ 7F (hexa), etc. Les constructeurs qui indiquent les adresses et codes en hexadécimal suffixent la valeur avec la lettre « H » ou parfois préfixent avec le caractère « $ ».

Alesis QSR

MSB
CC00
LSB
CC32
ProgrammeBanqueN° de Patch affiché
000—127User Bank0—127 
100—127Preset Bank 10—127 
200—127Preset Bank 20—127 
300—127Preset Bank 30—127 
400—127Preset Bank 40—127 
500—127Card Bank 10—127Si carte(s) QCARD, SRAM ou Flash RAM insérée(s)
600—127Card Bank 20—127Si carte(s) QCARD, SRAM ou Flash RAM insérée(s)
700—127Card Bank 30—127Si carte(s) QCARD, SRAM ou Flash RAM insérée(s)
800—127Card Bank 40—127Si carte(s) QCARD, SRAM ou Flash RAM insérée(s)
900—127Card Bank 50—127Si carte(s) QCARD, SRAM ou Flash RAM insérée(s)
1000—127Card Bank 60—127Si carte(s) QCARD, SRAM ou Flash RAM insérée(s)
1100—127Card Bank 70—127Si carte(s) QCARD, SRAM ou Flash RAM insérée(s)
1200—127Card Bank 80—127Si carte(s) QCARD, SRAM ou Flash RAM insérée(s)
1300—127Card Bank 90—127Si carte(s) QCARD, SRAM ou Flash RAM insérée(s)
1400—127Card Bank 100—127Si carte(s) QCARD, SRAM ou Flash RAM insérée(s)
1500—127Card Bank 110—127Si carte(s) QCARD, SRAM ou Flash RAM insérée(s)

E-Mu Audity 2000

MSB
CC00
LSB
CC32
ProgrammeBanqueN° de Patch affiché
00000—127User Bank 00—127
00010—127User Bank 10—127
00020—127User Bank 20—127
00030—127User Bank 30—127
03000—127Audity Bank 00—127
03010—127Audity Bank 10—127
03020—127Audity Bank 20—127
03030—127Audity Bank 30—127
03040—127Audity Bank 40—127
02000—127XTREM Bank 00—127
02010—127XTREM Bank 10—127

Ensoniq MR-Rack

MSB
CC00
LSB
CC32
ProgrammeBanqueN° de Patch affiché
010—127RAM 0010—127 
 
030—127ROM 0030—127 
040—127ROM 0040—127 
080—127GM 0080—127Banque GM
0100Drum Kit0Perf Edit Kit
0110—110DRM0110—110Drum Kit 11
0120—108DRM0120—108Drum Kit 12
0130—67DRM0130—67Drum Kit 13
0140—112DRM0140—112Drum Kit 14
0150—92DRM0150—92Drum Kit 15
0160—55DRM0160—55Drum Kit 16
0170—76DRM0170—76Drum Kit 17
0180—107 127DRM0180—107 127Drum Kit 18, 127=Silence
 
0240—127EXP-10—127Si carte EXP-1 installée
0250—127EXP-10—27 Si carte EXP-1 installée
0260—127EXP-10—127Si carte EXP-1 installée
0270—127EXP-10—127Si carte EXP-1 installée
0280—92 64–89EXP-10—92 64–89Si carte EXP-1 installée
0290—97EXP-30—97Si carte EXP-3 installée
0300—93EXP-30—93Si carte EXP-3 installée
0310—53 96—105EXP-30—53 96—105Si carte EXP-3 installée
0320—44 58—60 64—108EXP-30—44 58—60 64—108Si carte EXP-3 installée
0330—28 50—81 95—101EXP-30—28 50—81 95—101Si carte EXP-3 installée
0340…123EXP-30…123Si carte EXP-3 installée
0350…78EXP-30…78Si carte EXP-3 installée
 
0960—127CDR 0960—127Si carte SRAM 512 MB insérée
0970—127CDR 0970—127Si carte SRAM 512 MB insérée
0980—127CDR 0980—127Si carte SRAM 512 MB insérée
0990—127CDR 0990—127Si carte SRAM 512 MB insérée
 

Astuce : Si vous voulez savoir dans quelle banque est sélectionné le programme courant, appuyez sur le bouton [Sound] et regardez le coin supérieur droit de l'écran du MR-Rack : la paire de nombres à trois chiffres vous affiche la valeur du Bank Select CC#32 suivi du Program Change pour ce son (Sound).

Kawai K5000R

MSB
CC00
LSB
CC32
ProgrammeBanqueN° de Patch affiché
10000—127Single A1—128 
10100—63Multi1—64 
10200—127Single D1—128 
10300—127Single E1—128Si carte ME-1 installée
10400—127Single F1—128Si carte ME-1 installée

Korg Wavestation SR

MSB
CC00
LSB
CC32
ProgrammeBanqueN° de Patch affiché
000—49RAM 10—49
0050—99RAM 250—99
020—49RAM 30—49
0250—99ROM 450—99
030—49ROM 50—49
0350—99ROM 650—99
040—49ROM 70—49
0450—99ROM 850—99
050—49ROM 90—49
0550—99ROM 1050—99
010—49ROM 110—49
0150—99Carte50—99

Roland JV-1080

MSB
CC00
LSB
CC32
ProgrammeBanqueN° de Patch affiché
8000—127User1—128
8100—127Preset A1—128
8110—127Preset B1—128
8120—127Preset C1—128
8130—127Preset D (GM)1—128
8200—127Carte DATA1—128
8300—127Carte PCM1—128
8400—127Extension A1—128
8410—127Extension A129—256
8420—127Extension B1—128
8430—127Extension B129—256
8440—127Extension C1—128
8450—127Extension C129—256
8460—127Extension D1—128
8470—127Extension D129—256

Yamaha FS1R

MSB
CC00
LSB
CC32
ProgrammeBanqueN° de Patch affiché
6300—127INTERNAL1—128
6310—127PRESET A1—128
6320—127PRESET B1—128
6330—127PRESET C1—128
6340—127PRESET D1—128
6350—127PRESET E1—128
6360—127PRESET F1—128
6370—127PRESET G1—128
6380—127PRESET H1—128
6390—127PRESET I1—128
63100—127PRESET J1—128
63110—127PRESET K1—128


Les informations sur les Bank Select MSB et LSB se trouvent dans chaque manuel utilisateur, ou son annexe généralement nommé « MIDI Implementation ».

MacTalkLa bonne connaissance de la structure de la mémoire d'un synthé et des valeurs des Bank Select est primordiale si vous souhaitez personnaliser des MIDI Patch Name documents pour votre séquenceur (MIDI) favori.

Maintenant, c'est à vous de jouer… ;-)


Présenté par Jenfi Home.
Copyright © 2001-2017 Jean-Philippe Mamosa.
Toutes les photographies, sons, programmes, marques déposées et les logos sont propriétés de leurs détenteurs respectifs.
Page modifiée il y a plus de 2 ans, un samedi à 09h24mn.