Table des matières

Introduction au signal MIDI

Le Midi est un protocole de discussion entre instruments de musiques, ordinateurs, etc… C'est un signal robuste.

Un nombre important de produits existent, permettant un vaste choix pour un interfaçage manuel avec White Cat et comportant boutons on/off, potentiomètres, rotatifs, ….

Généralement, pour de la lumière, on choisira une Surface de Contrôle Midi. Les surfaces de contrôle possèdent des potentiomètres. Mais on peut aussi utliser un clavier (synthé).

De nombreux périphériques midi existent sur le marché: boîtes à boutons, boites à faders, etc….

Concernant le spectacle et la lumière, les plus utilisés sont la BCF2000 et l'UC-33. Les produits Novation, Korg et Akai sont aussi plébicités.

midi_uc.jpgmidi_akai.jpgmidi_bcf.jpgmidi_novation.jpgmini_launchpad.jpgmidi_pad.jpg

Signal

Les instruments midi ne créent pas de sons .wav ou .mp3, mais envoient des messages numériques. Ces messages émis envoient des informations sur le type de message envoyé.

Type de signal

En spectacle on utilise essentiellement la réception de deux types de signaux:

  1. les signaux Key-On / Key-Off qui correspondent à une touche pressée/relâchée.
  2. le signal Ctrl-Change qui correspond à un potentiomètre.

L'instrument utilisé enverra donc un signal fonction de l'outil utilisé ( Key-On/Key-Off/Ctrl-Change).

Identifiants

Ce signal, outre son identifiant de type, comporte deux autres identifiants:

  1. le Channel-Midi, sorte d'univers. Il y a 16 Channel-Midi ( 0 à 15 dans White Cat)
  2. le Pitch, hauteur de note, qui est le second identifiant, s'exprime de 0 à 127

L'identifiant permet donc d'affecter précisément à une action un contrôleur unique . On a donc 16×127 notes possibles.

Le Channel-Midi permet de travailler à plusieurs instruments: notes issues du synthé en Channel Midi 1, notes issues du Pad en Channel Midi 3, notes issues de VVVV en Channel Midi 6…

Le Pitch, hauteur de notes, est un identifiant dû historiquement aux claviers: 127 touches sur le clavier.

Valeur

Enfin, ce signal comporte une valeur, exprimée de 0 à 127.

Cette valeur est moins fine que le dmx, qui a 255 pas.

Concernant les synthés, le signal Key-On ou Key-Off donnera une valeur variant fonction de la célérité de la frappe de la touche. Cette valeur s'appelle la vélocité.

Les boutons des surfaces de contrôle n'ont pas de vélocité. Ils auront donc des niveaux fixes On/Off ( 127 / 0 par ex).

Les pads ont la vélocité.

Programmation interne de l'instrument

Le midi est une norme simple. Mais ses usages sont tellement différents d'un cas de figure à l'autre, d'une pratique professionnelle à l'autre, d'un logiciel à l'autre, que la plus part des instruments midi permettent de:

Réaction de White Cat à une commande

Depuis la version 0.7.6.6, la lecture de l'ordre se fait désormais sur la base des identifiants Channel Midi et Pitch. Le type ( Ctrl-Change / Key-On / Key-Off / Note ) n'influe plus. En effet, certaines surfaces de contrôle ont des boutons émettant un signal de type Ctrl-Change en preset d'usine.

Seule la touche Flash a un comportement nécessitant un signal de type Key-On impérativement.

Dans l'idéal, l'utilisateur néophyte retiendra:

Branchements, et ports midi

Un périphérique midi peut se brancher soit:

Un même port midi ne peut pas être partagé par deux logiciels.

Il faut alors splitter virtuellement le signal, pour pouvoir partager un même instrument entre deux logiciels.

Midi-Ox / MidiYoke est une suite logicielle libre permettant de faire celà ( entre autres).

C' est une application essentielle et robuste dans le travail avec le midi. MidiYoke est un ami fidèle du whitecatien qui travaille à plusieurs applications.

Présentation de MidiYoke

Elle se décline en deux programmes que l'on peut télécharger et installer séparemment:

  1. Un logiciel A reçoit le signal d'une interface physique , et renvoie du midi out sur le port MidiYoke 5. Un logiciel B va écouter le port MidiYoke 5. Les deux logiciels sont sur la même machine et écoutent ainsi la même interface.
  2. Un logiciel A envoie du midi out sur le port MidiYoke 5. Un logiciel B va écouter le port MidiYoke 5. Les deux logiciels sont sur la même machine et l“un asservi l'autre via le midi.

MidiYoke est compris dans Midi-Ox.

MidiYoke ne comprend pas Midi-Ox.

Cette technique de branchement est applicable pour recevoir un signal , mais aussi pour l'émettre.

Midi-Out

On peut renvoyer un signal midi depuis White Cat de façon à:

si on utilise à la main, puis dans le logiciel, un fader, on appréciera que le logiciel remette à jour physiquement le fader.

Par exemple, avec une BCF200.

En savoir plus

Midi sur Wikipédia

Configuration et affectation MIDI

Ce menu de configuration comporte plusieurs pages:

On accède à ce menu en clickant [CFG MAIN] ( Shift-F11) puis l'onglet [MIDI CONFIG].

On accède aux différentes pages en clickant leurs onglets.

Midi Devices

Vous pouvez connecter un ou plusieurs périphériques midi à White Cat.

Ici cette capture d'écran montre les ports virtuels de Midi Yoke ainsi qu'une interface midi générique nommée Périphérique audio usb comportant deux entrées.

.

Les deux premières colonnes correspondent aux entrées Midi vers White Cat, les deux colonnes de droite aux sorties Midi de White Cat. Pour se connecter/déconnecter au port midi de votre choix, il suffit de clicker dessus.

Le bouton Rescan permet de mettre à jour la détection des périphériques branchés ou débranchés à chaud pendant l'éxécution de White Cat.

midi_rescan.jpg

Options et Presets

midi_options_main.jpg

Options midi

midi_options.jpg

Key-On Vel0 = Key-Off

Certains périphériques nécessitent un trichage du signal , par rapport au fonctionnement interne de White Cat.

Ainsi , si vous êtes possesseur d'une BCF2000, qui n'émet en bouton qu 'un signal Key-ON Vel 0 au lieu de Key-OFF, vous aurez des soucis pour utiliser la fonction [RECALL] du menu All at Zero.

Astuce: Sur certaines surfaces de controle midi ( type UC-33 ), les boutons génèrent un signal Ctrl-Change en toggle:

En utilisant Key-On Vel0 = Key-Off, vous obtenez le comportement d'un bouton poussoir affectable au Go, par exemple, sans devoir reprogrammer en interne votre surface de controle.

Auto-desaffectation

Par défaut cette option est ON.

Elle permet lorsque vous affectez un contrôleur à la volée de vérifier dans toutes les fonctions si il ne s'y trouve pas, et de le retirer.

En le désenclenchant, vous permettez une affectation multiple, et ainsi un seul controle midi pourra faire plusieurs choses.

Cette option est présente pour des besoins exotiques:

exemple: une seule commande midi pour un Fader et le Volume d'un Player permettra manuellement de monter et le son de la rue et l'entrée de lumière de celle-ci à l'ouverture d'une porte, et d'accompagner le jeu des comédiens à la main.

Si vous la désenclenchez, soyez méticuleux dans vos affectations midi, et n'oubliez pas de la ré-enclencher.

Midi Mute

Parfois avec certains contrôlleurs, il est nécessaire de MUTER, rendre muette l'entrée midi, et ainsi ne plus affecter les commandes de WhiteCat. Elle est accessible depuis le panneau de configuration:

Mais depuis la version 0.8.2.2 un nouveau système de mutage prend place dans WhiteCat: Voir MidiMute System en fin de cette page wiki.

Auto-demute

v.0.8.2.3 La commande mutée est automatiquement démutée lorsque la valeur du potentiomètre qui la contrôle atteint l'état dans WhiteCat.

Mute on LFO

v.0.8.2.3 Cette fonction concerne uniquement les faders. Lorsqu'un LFO est lancé, l'entrée midi est automatiquement mise en mute.

Auto-mute CueList Speed

Lorsque vous utilisez l'accéléromètre du séquenciel, ce dernier est mis en mute automatiquement si la valeur n'est pas la vitesse normale. Celà permet de recaller son potentiomètre, et conjugué à auto-demute de reprendre la main sans souci sur un crossfade fait de plusieurs mémoires linkées.

To LAUNCHPAD

Le launchpad est un périphérique midi avec une grille de 64 + 16 boutons. Le Launchpad a été intégré dans WhiteCat, du fait du grand nombre de commandes assignables qui demande une boite à ON/OFF importante sur les régies très manuelles. Son prix relativement bas et sa robustesse la rendent intéressante..

launchpad.jpg L'une des spécificités du launchpad est le rétro-éclairage de ses boutons, qui permet de se retrouver très rapidement dans ses commandes, et de ne pas vérifier que le logiciel traite l'information appelée, puisque les leds en sont le témoin. En enclenchant cette fonction, et en étant branché en sortie midi sur le Launchpad, WhiteCat allumera les commandes fonction de ses états ( LFO UP en cours, GO en cours, etc ). Le launchpad est un périphérique lent, seuls sont traités les états en cours. Les impulsions de type Dock+/dock- ou Ctrl-W/X ne générent pas de lumière.

Enclencher [To Launchpad] si vous désirez émettre vers ce dernier les états lumineux des touches.

Launchpad colors

Le launchpad, ainsi que d'autres surfaces midi rétro-éclairées, attendent de recevoir en retour le signal émis par la touche, mais à une certain valeur.

Cette valeur, de 0 à 127, détermine la couleur de la touche.

Si vous possédez des périphériques midi dont les boutons sont rétro-éclairés et pilotables ( AKAI MPC40 par ex), vous pouvez reparamétrer les envois midi en tapant les valeurs dans les couleurs désirées. Ceci dépend du matériel.

midi_launchpad_colors.jpg

Il y a 6 couleurs de base définies pour WhiteCat, sur la base du launchpad:

Pour les redéfinir:

  1. taper la valeur de vélocité à renvoyer au périphérique
  2. clicker la case de couleur

Pour un descriptif des couleurs utilisées par commande, voir Launchpad

Changer le signal en entrée

Ce changement intervient sur tous les types de signaux ( Key-Off / Key-On / Ctrl-Change), et est effectué dès que les identifiants d'un signal correspondent en Channel Midi et en Pitch. Cette transformation du signal s'effectue dans l'ordre suivant:

  1. signal entrant pur
  2. transformation générale ou pas de tout signal Key-On Vel=0 en Key-Off
  3. transformation spécifique
  4. routage des commandes dans WhiteCat

Cet ordre est important à intégrer, car il permettra de configurer précisemment les commandes de WhiteCat fonction de vos périphériques midi.

Normal 0-127

Comportement normal.

Inverse 127-0

Certains périphériques émettant du midi, comme la PRONTO, ont de drôles de particularités: ainsi cette dernière émet du midi, mais donne un signal inversé sur la deuxième tranche ( 127-0 au lieu de 0-127). On ne peut régler celà dans les menus de la PRONTO.

Vous pouvez donc désormais inverser le signal dans White Cat:

  1. clicker sur CH jusqu'à obtenir le channel midi désiré
  2. naviguer dans la grille des 127 pitch, et clicker sur le numéro de pitch désiré pour se mettre en mode inversion

midi_cheat_cc.jpg

Toggle Mode

Si votre surface de controle n'est pas reparamétrable dans le hardware, vous pouvez enclencher un mode Toggle dans WhiteCat:

A réception d'un signal Key-On Vel 127, le signal sera triché en On/OFF 127/0, fonction de son dernier état:

Celà peut être interressant pour des allumages maintenus type Flash ou Niveau sur un Fader.

KOn Vel0=KOff

Permet de ressortir spécifiquement un signal Key-Off si le signal est de type Key-On Vel=0

KOff=KOn Vel0

Permet de ressortir spécifiquement un signal Key-On Vel=0 si le signal est de type Key-Off

Presets

Les presets midi sont un enregistrement par les utilisateurs de leur configuration d'affectations midi.

Dans l'idéal:

Créer un preset:

  1. mettre en paramétrages d'usine le périphérique
  2. reprogrammer le minima de signaux internes
  3. reseter le paramétrage midi dans white cat ( dans fonction SAVE )
  4. affecter vos commandes
  5. sauver et quitter white cat
  6. copier les fichiers midi_affectation.whc et midi_send_out.whc dans votre sauvegarde de travail( last_save).
  7. aller dans le dossier midi_presets
  8. créer un dossier du nom de votre preset sans espace ni accents dans son nom, et d'un maximum de 24 caractères
  9. copier dans ce dossier les deux fichiers de votre sauvegarde midi
  10. y joindre un fichier texte (.txt) créé avec le notepad, décrivant de manière claire les grandes affectations du preset, les éventuels reprogrammations internes au périphérique, ainsi que la marche à suivre pour le reprogrammer

Charger un preset

  1. poser le dossier du preset téléchargé ou envoyé dans le dossier midi_presets
  2. ouvrir white cat
  3. aller dans le menu CFG / Midi / » Options/Presets
  4. sélectionner dans le menu déroulant le preset en question
  5. clicker load

Avec la version 0.7.6 sont fournis deux canevas, un pour l'uc-33, un pour la BCF2000.

Honnêtement ils sont présents à titre indicatifs, et il est certain que la communauté pourra fournir des presets plus ad-hoc et plus simples que ceux joints avec la 0.7.6. La reprogrammation de la BCF se révèle trop fastidieuse et il est certain que vous apporterez une solution plus élégante.

MIDI AFFECT

Les commandes affectées peuvent être Ctrl-Change, Key-On et Key-Off, pour toutes les commandes.

Assigner une commande midi à une fonction de White Cat se fait ainsi:

Attention, le mode d'affectation reste enclenché, donc veillez à le désenclencher avant d'aller manipuler à la souris d'autres commandes.

Affecter sans la fenêtre CFG

Vous pouvez fermer la fenêtre CFG et utiliser le bouton [Midi Affect] de la barre de menu en haut:

midi_affect_simplifie.jpg

Les options Solo et X8 sont appelables en reclickant [Midi Affect].

Démarche

Il faut donc :

  1. choisir un signal à affecter
  2. définir le mode d'affectation
  3. sélectionner la commande à assigner en Midi

Choisir un signal à affecter

La façon manuelle

Le périphérique doit être sélectionné en entrée dans la page [MIDI DEVICES].

Lorsque l'on bouge un potentiomètre ou une touche, le signal apparait en face de »MIDI IN:

! Attention, White Cat filtre les données MIDI reçues, ne laissant apparaitre que les types de messages Ctrl-Change, et Key On/ Key Off.

midi_in.jpg

Générer un faux signal midi

  1. Taper au clavier le numéro de Midi Channel, clicker [CH] pour affecter cette valeur ( de 0 à 15)
  2. Taper au clavier le numéro de Pitch, clicjer [Pitch] pour affecter cette valeur ( de 0 à 127)
  3. Clicker le [Type] pour sélectionner le type de donnée: Ctrl-Change / Key-On / Key-Off
  4. Clicker [Fake MIDI] pour enclencher en mode assignation le Fake Midi

midi_fake_midi.jpg

Pourquoi un Fake Midi ?

Souvent on peut être amené à piloter d'autres logiciels par le midi. Pas besoin de hardware alors, il suffit de créer ses commandes en faux midi, de les émettre vers un port virtuel comme Midi Yoke pour les partager avec un autre logiciel.

Nettoyer une commande

Sélectionner [Clear] et affectez en mode solo ou x8.

Si vous avez besoin de remettre à zéro complètement TOUTES vos assignations midi, aller dans le menu de sauvegarde:
- clicker [SAVE]
- sélectionner le mode [CHOICE]
- sélectionner Midi
- clicker [RESET] 

Définir le mode d'affectation

Il existe plusieurs modes d'affectation. Ces modes dépendent si vous affectez une commande midi dans l'espace Faders, ou une commande midi solo.

Dans les versions précédentes à la version 0.7.6.6 on pouvait attribuer en solo, en x8, en x48 et en mode clavier. Ces modes ont été simplifiés pour ne garder que le mode solo et le mode x8.

midi_affect_way.jpg

Mode solo

Un signal midi est affecté à une seule commande. Le mode solo permettra d'affecter le séquentiel, une roue de couleur, faire une correction dans une affectation, désaffecter une commande.

Mode sériel

L'espace Faders comporte 48 Faders. Celà peut devenir très fastidieux de faire une affectation Fader après Fader.

Il existe donc un mode d'affectation spécial qui permet de traiter l'affectation de manière sérielle.

Cette action sérielle est basée sur incrémentation du Pitch OU, si séléctionné, du Channel Midi ( cf image ci dessous, en mode Chan. et non plus Pitch).

midi_pitch_mode.jpg

Si une commande ou une action midi comporte 8 ou plus commandes de même type, elle est assignable en 8 Ex assignable en x8: Les ups des faders sont au nombre de 48. Les faders sont 48. Les docks colors sont 8. Les aires de tracking vidéo sont au nombre de 12 donc assignable en x8 pour les 8 premiers.

Si ce nombre de commandes est inférieur à 8, l'asignation doit être faite impérativement en mode solo. Le Séquenciel on stage est solo. Les presets de tracking vidéo sont 5.

Exemple d'affectation sérielle et choix du mode sériel en Picth ou Channel

Pot. 1: Ch:1 Pitch 8

Pot. 2: Ch:2 Pitch 8 
Pot. 3: Ch:3 Pitch 8
etc .... jusqu'à Pot. 8: Ch:8 Pitch 8

Plutôt que d'affecter manuellement un à un chaque potentiomètre:

  1. j'enclenche l'incrémentation sérielle en mode [Channel]
  2. j'enclenche le mode série par 8
  3. je bouge le premier potentiomètre de ma surface de contrôle
  4. j'affecte au premier Fader ( N°1 par ex) de mon choix en clickant dessus
  5. l'affectation est faite pour les 8 Faders de 1 à 8 sur base sérielle en Channel

Si ma surface de contrôle avait l'affectation suivante:

Pot. 1: Ch:0 Pitch 16
Pot. 2: Ch:0 Pitch 17 
Pot. 3: Ch:0 Pitch 18
etc .... jusqu'à Pot. 8: Ch:0 Pitch 23

Je laisse l'incrémentation sérielle en mode [Pitch].

Affecter à une commande l'assignation Midi

Une fois vos modes choisis:

  1. survoler la commande choisie, qui apparait alors en pourtour rouge
  2. clicker dessus pour mener l'opération d'affectation choisie

midi_affecter_a_un_fader.jpg

Les commandes assignables en Midi

Se reporter au synoptique d'affectation midi

MidiMute System

(version 0.8.2.2): un nouveau système de mutage de l'entrée midi est mis en place.

Ce système est mis en place pour répondre à la problèmatique des surfaces de controle non motorisées: si vous déclenchez un évènement, type Banger ou LFO sur un Fader, un master, ou encore le séquenciel, les niveaux physiques des potentiomètres ne correspondent plus.

Retoucher la commande physique provoquera une saute d'intensité du niveau piloté dans le logiciel.

Le nouveau système de Mutage règle ce problème.

MidiMute (global)

Le bouton MidiMute est un raccourci Général pour muter toutes les affectations midis.

En clickant la touche MidiMute, vous enclenchez / désenclenchez tous les MidiMute(local) de WhiteCat. Cette commande est affectable en midi, et seule cette commande midi n'est pas mutée. Aucune affectation n'est pilotable ( faders, séquenciel, …, ainsi que tout ce qui est touches ).

Lorsque l'on met en ON MidiMute (global) tous les MidiMute (local) sont enclenchés. Lorsque l'on met en OFF MidiMute (global) tous les MidiMute (local) sont dés-enclenchés.

Vous pouvez débrayer MidiMute(local) même si le MidiMute (Global) est enclenché.

MidiMute (local)

MidiMute (local) est une petite pastille placée généralement en dessous de MidiOUT, et qui est affectée à tout potentiomètre dans WhiteCat. Si vous enclenchez la petite pastille, cette commande n' écoute plus le signal midi. Un affichage de ce dernier apparait, de façon à ce que vous recalliez physiquement vos potentiomètres. Le niveau apparait dans une barre blanche, sans être transféré à son affectation.

Qui est concerné par MidiMute (local)?

Tout ce qui est à potentiomètre dans WhiteCat:

CoreMIDI et les interfaces midi sur le réseau wifi

De nombreuses applications pour iOS permettent d'émettre du Midi sur le réseau wifi. Le protocole utilisé s'appelle CoreMIDI. Il permet donc de relier votre périphérique ( iPhone / iPad / Tablette ou téléphone Android) et votre ordinateur.

Pour un programme émettant depuis un iOS, voir ici: Recevoir le midi d'un appareil émettant en CORE-midi sur le réseau

Pour un programme sous Android, généralement un serveur est fourni pour Windows, à installer sur votre machine.

Ce genre de périphériques devient intérressant comme contrôleur d'appoint ou si vous avez besoin d'un nombre de boutons déclencheurs conséquent.