ONSONG CHARTS AVAILABLE NOW! LEARN MORE HERE
Podręcznik użytkownika
Składnia MIDI
OnSong używa składni opartej na tekście do wyrażania poleceń MIDI. Chociaż możesz używać Zdarzenia MIDI w Edytorze metadanych, możesz również wyrażać polecenia MIDI w tekście.
Wartości rozdzielane
Przede wszystkim wiele poleceń MIDI można oddzielać różnymi znakami, w tym: znaku tabulacji, przecinkiem, średnikiem, kreską pionową lub nową linią. Przecinek jest najczęściej używanym separatorem. Na przykład:
1.2:0@0, PC1.2:3@0, N67@1, START, SS8
Kanał
Każdy wpis może zawierać symbol @. Wartość liczbowa po symbolu to kanał, na którym polecenie ma być wysłane. Ponieważ kanały w MIDI zaczynają się od zera, kanał pierwszy to zero (0), kanał drugi to jeden (1) itd.
Jeśli nie jest używany symbol @, polecenie jest wysyłane lub odbierane na wszystkich kanałach.
Prefiksy
Każdy wpis na liście zawiera prefiks. Ten prefiks określa typ polecenia MIDI do wysłania. Obejmują one:
- PC lub Brak prefiksu to zdarzenie zmiany programu.
- N to zdarzenie notatki
- CC to zdarzenie zmiany kontroli.
- NRPN to numer parametru niezarejestrowanego.
- SS to zdarzenie wyboru utworu.
- START to polecenie startu.
- STOP to polecenie zatrzymania.
- CONTINUE to polecenie kontynuacji.
- WAIT czeka określoną ilość czasu przed wysłaniem kolejnych zdarzeń.
- F0 poprzedza wiadomość SysEx.
- @ poprzedza globalny tag MIDI.
Wartości
Wartość polecenia pojawia się tuż przed symbolem @ lub na końcu wpisu, jeśli nie podano @. To jest wartość zmiany programu, zmiany kontroli, notatki lub wyboru utworu na podstawie prefiksu. W przypadku wpisów SysEx wartość szesnastkowa SysEx jest podana bezpośrednio po prefiksie F0, który jest używany jako nagłówek dla wszystkich poleceń SysEx.
Podwartości
W niektórych przypadkach dodatkowe informacje są przekazywane w poleceniu MIDI jako podwartości. Na przykład MSB i LSB, a także prędkość wartości kontroli można wysyłać w ten sposób. Wyraża się to poprzez dodanie dwukropka w części wartości. Podwartość ma różny kontekst w zależności od typu wysyłanego polecenia MIDI:
- Zmiana programu ma podwartości wyrównane z MSB/LSB zmiany programu. Te wartości są oddzielone kropką z MSB po lewej i LSB po prawej.
- Zmiana kontroli ma wartość kontroli ustawioną za pomocą tego. Liczba może być od 0 do 127. Jeśli jest pominięta, zakładana jest wartość 127. Możesz również oddzielić wiele wartości myślnikiem, aby przejść przez wartości. Na przykład 127-0 będzie zatrzaskiwać wartość 127 między stanami włącz i wyłącz.
- Zdarzenie notatki ma podwartość związaną z szybkością, z jaką powinna być grana notatka. Można to ustawić na wartość liczbową między 0 a 127. Możesz przejść przez wiele prędkości notatki, oddzielając je myślnikiem.
Przykłady
Zacznijmy od prostej zmiany programu. W tym scenariuszu używamy zmiany programu 8, która wysyła również MSB 4 i LSB 2 na kanale 1. Przykład zaczyna się od najbardziej złożonej wariacji tego i usuwa wybór banku i kanał, aby stać się bardziej szeroki:
PC3.1:7@0, 3.1:7@0, 3:7@0, 3:7, 7@0, 7
Zmiany kontroli są podobne, z wyjątkiem tego, że lewa strona składni to numer zmiany kontroli, a prawa strona to opcjonalna wartość. Jeśli wartość nie jest podana, zamiast tego zostanie wysłana 127. Wyślemy zmianę kontroli 106 z wartością 64 na kanale 3.
CC105:63@2, CC105:63. CC105@2, CC105
Teraz przyjrzyjmy się zdarzeniom notatek. Chcemy zagrać C4 na kanale 8 z prędkością 75%, wpisalibyśmy poniższe, ponieważ OnSong zaczyna liczenie MIDI C0 jako 0 na skali notek MIDI:
N60:95@7, N60@7, N60:95, N60
Ponownie, ważne jest pamiętanie, że wraz z usuwaniem wartości ze składni MIDI, instrukcja MIDI staje się bardziej szeroka i mniej specyficzna. Na przykład, ostatnia wersja zdarzenia notatki wyśle C4 z prędkością 100% na wszystkich kanałach.
Możemy również opóźnić MIDI, dodając polecenie WAIT. Poniższe będzie opóźniać MIDI przez 2 sekundy, a także 500 ms (pół sekundy). Możesz określić sekundy jako 1-10 sekund lub w milisekundach.
WAIT2, WAIT500
Ostatecznie możemy odnieść się do globalnych MIDI, które są wstępnie skonfigurowanymi listami zdarzeń MIDI, do których można się odwoływać. Jeśli masz globalny MIDI z „on" jako tagiem (bez cudzysłowów), możesz odnieść się do tej globalnej wartości w następujący sposób:
@on