ONSONG CHARTS AVAILABLE NOW! LEARN MORE HERE
Користувацький посібник
Синтаксис MIDI
OnSong використовує текстовий синтаксис для вираження команд MIDI. Хоча ви можете використовувати Події MIDI в Редакторі метаданих, ви також можете виражати команди MIDI в тексті.
Розділені значення
Перш за все, кілька команд MIDI можна розділити різними символами, включаючи: символ табуляції, кому, крапку з комою, вертикальну лінію або новий рядок. Кома є найпоширенішим розділювачем. Наприклад:
1.2:0@0, PC1.2:3@0, N67@1, START, SS8
Канал
Кожна запис може містити символ @. Числове значення після символу — це канал, на якому має бути надіслана команда. Оскільки канали в MIDI починаються з нуля, канал один було б нулем (0), канал два одиницею (1) тощо.
Якщо символ @ не використовується, команда надсилається або приймається на всіх каналах.
Префікси
Кожна запис у списку містить префікс. Цей префікс визначає тип команди MIDI для надсилання. Вони включають:
- PC або Без префікса — це подія зміни програми.
- N — це подія ноти
- CC — це подія зміни контролера.
- SS — це подія вибору пісні.
- START — це команда запуску.
- STOP — це команда зупинки.
- CONTINUE — це команда продовження.
- F0 передує повідомленню SysEx.
- WAIT реалізує затримку.
Значення
Значення команди з'являється прямо перед символом @ або в кінці запису, якщо @ не вказано. Це значення зміни програми, зміни контролера, ноти або вибору пісні на основі префікса. У випадку записів SysEx, шістнадцяткове значення SysEx надається безпосередньо після префікса F0, який використовується як заголовок для всіх команд SysEx.
Підзначення
У деяких випадках додаткова інформація передається в команді MIDI як підзначення. Наприклад, MSB та LSB, а також швидкість значень контролю можуть бути надіслані таким чином. Це виражається додаванням двокрапки в частину значення. Підзначення має різний контекст залежно від типу надісланої команди MIDI:
- Зміна програми має підзначення, вирівняні з MSB/LSB зміни програми. Ці значення розділені крапкою з MSB ліворуч і LSB праворуч.
- Зміна контролера має значення контролера, встановлене за допомогою цього. Число може бути від 0 до 127. Якщо опущено, передбачається значення 127.
- Подія ноти має підзначення, пов'язане зі швидкістю відтворення ноти. Це можна встановити на числове значення від 0 до 127.
Приклади
Почнемо з простої зміни програми. У цьому сценарії ми використовуємо зміну програми 8, яка також надсилає MSB 4 і LSB 2 на каналі 1. Приклад починається з найбільш складної варіації та видаляє вибір банку та канал, щоб стати більш загальним:
PC3.1:7@0, 3.1:7@0, 3:7@0, 3:7, 7@0, 7
Зміни контролера подібні, за винятком того, що ліва частина синтаксису — це номер зміни контролера, а права частина — це необов'язкове значення. Якщо значення не вказано, замість нього надсилається 127. Ми надішлемо Change Control 106 зі значенням 64 на каналі 3.
CC105:63@2, CC105:63. CC105@2, CC105
Тепер давайте розглянемо події нот. Ми хочемо відтворити C4 на каналі 8 зі швидкістю 75%, ми введемо наступне, оскільки OnSong починає лічити MIDI C0 як 0 на шкалі нот MIDI:
N60:95@7, N60@7, N60:95, N60
Знову ж таки, важливо пам'ятати, що зі зменшенням значень у синтаксисі MIDI, оператор MIDI стає ширшим і менш специфічним. Наприклад, остання версія події ноти надішле C4 зі швидкістю 100% на всіх каналах.
Щоб реалізувати затримку між іншими подіями MIDI, використовуйте команду WAIT з числом. Число може бути цілим числом. Ви можете визначити секунди очікування як 1-10 або визначити як мілісекунди. Далі показано, як чекати 2 секунди, 10 секунд і половину секунди.
WAIT2, WAIT10, WAIT500