ONSONG CHARTS AVAILABLE NOW! LEARN MORE HERE
Manuel d’utilisation
Syntaxe MIDI
OnSong utilise une syntaxe basée sur du texte pour exprimer les commandes MIDI. Bien que vous puissiez utiliser les Événements MIDI dans l'Éditeur de métadonnées, vous pouvez également exprimer les commandes MIDI en texte.
Valeurs délimitées
Avant tout, plusieurs commandes MIDI peuvent être séparées par différents caractères, notamment : un caractère de tabulation, une virgule, un point-virgule, une barre verticale ou un saut de ligne. La virgule est le délimiteur le plus courant. Par exemple :
1.2:0@0, PC1.2:3@0, N67@1, START, SS8
Canal
Chaque entrée peut contenir un symbole @. La valeur numérique après le symbole est le canal sur lequel la commande doit être envoyée. Puisque les canaux dans MIDI commencent à zéro, le canal un serait un zéro (0), le canal deux un (1), etc.
Si aucun symbole @ n'est utilisé, la commande est envoyée ou reçue sur tous les canaux.
Préfixes
Chaque entrée de la liste contient un préfixe. Ce préfixe détermine quel type de commande MIDI envoyer. Ceux-ci incluent :
- PC ou Pas de préfixe est un événement de changement de programme.
- N est un événement de note
- CC est un événement de changement de contrôle.
- NRPN est un numéro de paramètre non enregistré.
- SS est un événement de sélection de chanson.
- START est une commande de démarrage.
- STOP est une commande d'arrêt.
- CONTINUE est une commande de continuation.
- WAIT attend une durée spécifique avant d'envoyer d'autres événements.
- F0 préfixe un message SysEx.
- @ préfixe une balise globale MIDI.
Valeurs
La valeur de la commande apparaît juste avant le symbole @ ou à la fin de l'entrée si aucun @ n'est donné. Il s'agit de la valeur du changement de programme, du changement de contrôle, de la note ou de la sélection de chanson basée sur le préfixe. Dans le cas des entrées SysEx, la valeur hexadécimale du SysEx est fournie directement après le préfixe F0 qui est utilisé comme en-tête pour toutes les commandes SysEx.
Sous-valeurs
Dans certains cas, des informations supplémentaires sont véhiculées dans la commande MIDI sous forme de sous-valeurs. Par exemple, MSB et LSB, ainsi que la vélocité des valeurs de contrôle peuvent être envoyées de cette manière. Ceci est exprimé par l'ajout d'un deux-points dans la portion de valeur. La sous-valeur a un contexte différent selon le type de commande MIDI envoyée :
- Changement de programme a des sous-valeurs alignées avec le MSB/LSB du changement de programme. Ces valeurs sont séparées par un point avec le MSB à gauche et le LSB à droite.
- Changement de contrôle a la valeur du contrôle défini à l'aide de ceci. Le nombre peut être entre 0 et 127. S'il est omis, la valeur de 127 est déduite. Vous pouvez également séparer plusieurs valeurs par un trait d'union pour parcourir les valeurs. Par exemple, 127-0 verrouillera la valeur de 127 entre les états activé et désactivé.
- Événement de note a une sous-valeur relative à la vélocité à laquelle la note doit être jouée. Ceci peut être défini sur une valeur numérique entre 0 et 127. Vous pouvez parcourir plusieurs vélocités de notes en les séparant par un trait d'union.
Exemples
Commençons par un simple changement de programme. Dans ce scénario, nous utilisons le changement de programme 8 qui envoie également un MSB de 4 et un LSB de 2 sur le canal 1. L'exemple commence par la variation la plus complexe de ceci et supprime la sélection de banque et le canal pour devenir plus large :
PC3.1:7@0, 3.1:7@0, 3:7@0, 3:7, 7@0, 7
Les changements de contrôle sont similaires, sauf que le côté gauche de la syntaxe est le numéro de changement de contrôle et le côté droit est une valeur optionnelle. Si la valeur n'est pas fournie, 127 est envoyé à la place. Nous allons envoyer le changement de contrôle 106 avec une valeur de 64 sur le canal 3.
CC105:63@2, CC105:63. CC105@2, CC105
Maintenant, examinons les événements de note. Si nous voulons jouer C4 sur le canal 8 avec une vélocité de 75 %, nous entrerions ce qui suit car OnSong commence à compter MIDI C0 comme 0 sur l'échelle de notes MIDI :
N60:95@7, N60@7, N60:95, N60
Encore une fois, il est important de se rappeler que à mesure que les valeurs sont supprimées de la syntaxe MIDI, l'instruction MIDI devient plus large et moins spécifique. Par exemple, la dernière version de l'événement de note enverra C4 à 100 % de vélocité sur tous les canaux.
Nous pouvons également retarder MIDI en ajoutant une commande WAIT. Ce qui suit retardera le MIDI de 2 secondes ainsi que de 500 ms (demi-seconde). Vous pouvez spécifier les secondes de 1 à 10 secondes ou en millisecondes.
WAIT2, WAIT500
Enfin, nous pouvons référencer des globales MIDI qui sont des listes préconfigurées d'événements MIDI qui peuvent être référencées. Si vous avez une globale MIDI avec « on » comme balise (sans guillemets), vous pouvez référencer cette globale avec ce qui suit :
@on