L'héritage
VST 5.x nous avait apporté une nouveauté bien sympathique, Les Patchenames, de simples scripts au format TXT contenant des informations de configuration à destination de nos synthétiseurs et expandeurs Hardware. Grâce à eux, point n'était plus nécessaire d'entrer de douloureux Program Change, de fastidieux Sysex ou en fonction de la complexité d'organisation de votre machine, de jongler avec les numéros de messages LSB, MSB et Nunémro de Programme.
Il devenait dès lors possible de sélectionner le moindre son désiré directement dans un menu déroulant où l'on développait l'arborescence de l'architecture interne du module sonore : un dossier contenant tous les pianos, un autre pour les percussions chromatiques, etc...
Chacun sa norme
Sans entrer dans les détails, il est tout de même bon de préciser que la norme Midi (Musical Instrument Digital Interface) a été créée initialement pour faciliter les échanges entre les différentes machines de différentes marques, en standardisant la correspondance de chaque type de son à tel ou tel numéro de programme : Piano = PC N° 1, Basse = PC N° 5, Cordes = PC N° 6, etc... Ainsi, tout allait pour le mieux dans le meilleur des mondes, mais...
128 !!! Sur autoroute, c'est 130 ma bonne Dam'...
Là où la norme Midi simplifie évidemment les choses pour les musiciens, elle impose de sévères limitations aux fabricants d'instruments électroniques puisqu'elle ne permet l'accés direct qu'à 128 programmes et donc à autant de sons. Rapidement, les différentes firmes contournèrent le problème en créant un "standard dans le standard". Ils parvinrent ainsi assez rapidement à ajouter des subdivisions supplémentaires à chacun des 128 programmes de départ.
Ainsi, Roland créa le GM, pour Général Midi, puis Yamaha passe à l'attaque en créant à son tour la XG beaucoup plus puissant encore que le GM, puis Roland pousse encore le concept pour faire évoluer sa norme vers une version GM2...
Les armes se sont pour le moment tues, mais il est encore possible de faire évoluer tout ce p'tit monde.
Ces données vous seront nécessaires pour la suite des évènements, car en fonction de votre machine, vous n'aurez pas les mêmes informations à entrer dans votre script.
Le doigt dans l'SX
Là ou VST 5.x se contentait de "lire" les scripts de Patchename qu'il fallait créer dans un petit utilitaire (D-Maker toujours dispo sur le FTP de Steinberg), SX nous facilite le travail en intégrant tout ce qu'il nous faut pour ne pas quitter l'interface de notre Cubase chéri.
Ouvrez donc le Manageur des Appareils MIDI (notez au passage la splendide francisation du soft ;-p , à vérifier dans le p'tit Robert) que vous trouverez dans le menu Périphériques, et observez un peu le contenu de cette fenêtre.
Commencez d'abord par définir la norme que votre module sonore utilise. S'il s'agit d'une machine Roland, vous utiliserez certainement le format GM, mais si, comme c'est le cas dans cet article, vous utilisez un module Yamaha, vous aurez alors affaire au format XG. Pour les autres marques, reportez vous directement à la documentation de votre bécane.
Pour l'heure, la machine utilisée sera un QY70 de chez Yamaha. Cette petite machine "de poche" a eu un franc succés à sa sortie notemment grace à la qualité de sa table d'ondes (les sons quoi ;o)...).
Aprés avoir écumé la toile à la recherche d'une éventuelle âme charitable qui aurait déjà écrit ce script, sans grand succés (ben oui, tout le monde ne connait pas la page de Patchenames de l'Espace Cubase ;o) ), vous allez donc devoir passer à l'action.
Pour commencer, et pour éviter de se taper des heures de frappe inutiles, nous allons charger le script générique XG qui est installé d'office par SX. Dans le Manageur, cliquez sur Installer Appareil et sélectionnez XG Device, cliquez sur OK, là vous pouvez renommer le script puis cliquez à nouveau sur OK.
Pour le moment, je ne le renomme pas, car il n'est toujours qu'un simple script XG et ne correspond pas forcément aux spécificités du QY70. En revanche, nous allons déjà pouvoir observer le comportement du QY avec ce script. Pour cela, commencez par assigner la bonne sortie midi au script, de cette facon, la simple sélection de celui-ci dans l'Inspecteur activera automatiquement la bonne sortie Midi, celle correspondant à votre machine, vous économisant ainsi un ou deux clic de plus. Pour ce faire, une fois le script XG Device chargé, vous constaterez qu'en face de son nom (dans la barre horizontale centrale) se trouve un champ de sélection indiquant la mention Non Connecté. En cliquant dessus, vous verrez votre interface Midi, éventuellement, les différentes sorties de celle-ci si elle en possède plusieurs. Choisissez celle à la quelle est connectée votre machine.
Dans le projet, créez une piste Midi, et dans l'Inspecteur, choisissez le script XG Device comme sortie.
A partir de cet instant, vous allez pouvoir observer le contenu d'une machine XG de base grâce à l'arborescence du script (à la facon de l'explorateur de Windows) en cliquant dans le champ prg: Eteint de l'Inspecteur.
Hélas, une simple comparaison de ce contenu avec la carte d'implémentation Midi du QY70 permet de voir que les différents programmes ne correspondent pas toujours, voir n'existent tout simplement pas dans le script ou n'ont carrément pas le même nom...
Il va donc faloir comparer patiemment, son aprés son, la bonne correspondance entre le contenu du script et le comportement du module. Je vous rassure, c'est tout de même moins long que de recréer le script de A à Z ;op
Pour se faire, observez le contenu de l'extrait de tableau suivant qui n'est autre que la carte d'implémentation des différents sons du module XG du QY70. Ainsi, la grande inscription du haut nous donne une information trés importante puisqu'elle nous permet de savoir quelles vont être les données à entrer dans le script. Les messages de type Bank Select (MSB) devront suivrent la numérotation (pour changer de "catégorie de son"), alors que ce sont les messages de type LSB qui donneront l'ordre au QY70 de changer de son.
La dessus, le tableau est trés clair, il suffit pour connaitre le bon ordre de recopier ce qui se trouve dans la colonne Bank# (Dans les documents anglo-saxon, # signifie souvent N°).
Je vous épargne les dix pages de tableaux ;op
Observons et comparons à présent le contenu de trois programmes dans le script. De retour dans le manageur, sélectionnez le premier son du script XG Device.
Dans la partie de droite, vous pouvez observer ce qui représente les ordres Midi, avec sur la première ligne le Bank Select et sur la seconde le Program Change. Ce sont ces données qu'il va falloir comparer et ajuster en fonction du contenu du tableau Midi. A titre de comparaison, voici les infos du troisième son MelloGrP.
Vous pouvez constater que la valeur du Bank Select est passée de 0 à 18, ces deux numéro correspondent également au contenu de la colonne Bank# du tableau. Et ainsi de suite pour le second son du second sous-groupe de piano (BritePno) nommé BritPnoK.
Cette fois, en correlation avec le tableau, le Program Change a augmenté d'une unité et le Bank Select utilise le bon N°. Vous constaterez toutefois un décalage d'une unité au niveau du Program Change. Ceci est simplement du au fait que la norme MIDI de base numérote les sons 0 à 127 là où la norme XG fait le même travail en allant de 1 à 128. Ce n'est pas trés génant, il faut simplement penser à en tenir compte à chaque fois.
Au boulot
A présent que les bases sont comprises, nous allons pouvoir commencer le travail à proprement parler. Pour commencer, toute modification du script d'origine sera impossible si vous ne cochez pas d'abord la case Activer l'Edition en haut de la colonne de gauche. Maintenant, il vous suffit de descendre dans l'arborescence patch aprés patch en vérifiant bien qu'il correspond au contenu du tableau midi.
Pensez maintenant à renommer votre script (en cliquant sur son nom) et à sauvegarder ce nouveau patchename en cliquant sur Exporter Configuration et en lui donnant un nom explicite. Il n'est malheureusement pas possible d'exporter le résultat en fichier texte comme avec D-Maker pas plus que de sélectionner ce qui sera exporté dans le fichier *.xml résultant sans auparavant supprimer les éventuels autres appareils déjà chargés. Mais par la suite, rien ne vous empèche tout simplement d'exporter la totalité de vos appareils effectivement utilisés afin de les retrouver tous en une seule action.
Au doigt, et... au mulot...
Vous allez maintenant pouvoir déguster le plaisir de changer de son plus simplement encore qu'en mettant les doigts sur votre machine. Amusez vous bien. SeE U sOoN !!!
NDLR : n'hésitez pas non plus à faire parvenir vos patches à l'Espace Cubase afin de les mettre en ligne ,o)