Felhasználói kézikönyv

MIDI szintaxis

Az OnSong szöveges szintaxist használ a MIDI parancsok kifejezésére. A MIDI-események szerkesztését a Metaadat-szerkesztőben végezheti, de MIDI parancsokat szövegben is kifejezhet.

Tagolt értékek

Mindenekelőtt több MIDI parancs elválasztható különféle karakterekkel, például: tabulátor karakter, vessző, pontosvessző, függőleges vonal vagy új sor. A vessző a leggyakoribb elválasztó. Például:

1.2:0@0, PC1.2:3@0, N67@1, START, SS8

Csatorna

Minden bejegyzés tartalmazhat @ szimbólumot. A szimbólum után található numerikus érték az a csatorna, amelyen a parancs elküldésre kerül. Mivel a MIDI csatornák nulláról kezdődnek, az egyik csatorna nulla (0), a második csatorna pedig egy (1) lenne, és így tovább.

Ha nincs @ szimbólum, a parancs az összes csatornára küldésre vagy fogadásra kerül.

Előtagok

A lista minden bejegyzése tartalmaz egy előtagot. Ez az előtag meghatározza, hogy milyen típusú MIDI parancsot kell küldeni. Ezek közé tartoznak:

  • PC vagy Nincs előtag egy programváltozás-esemény.
  • N egy notatevényt jelent
  • CC egy vezérlésváltozás esemény.
  • SS egy dalválasztás esemény.
  • START egy start parancs.
  • STOP egy stop parancs.
  • CONTINUE egy folytatás parancs.
  • F0 egy SysEx-üzenetnek előzi meg.
  • WAIT egy késleltetést valósít meg.

Értékek

A parancs értéke közvetlenül az @ szimbólum előtt vagy a bejegyzés végén jelenik meg, ha nincs @ megadva. Ez a programváltozás, vezérlésváltozás, nota vagy dalválasztás értéke az előtag alapján. SysEx bejegyzések esetén a SysEx hexadecimális értéke közvetlenül az F0 előtag után áll, amely az összes SysEx parancs fejléceként használható.

Alértékek

Bizonyos esetekben további információk közvetítésre kerülnek a MIDI parancsban alértékekként. Például az MSB és az LSB, valamint a vezérlési értékek sebessége ily módon küldhető el. Ezt a kettőspont hozzáadásával fejezzük ki az érték részben. Az alérték eltérő kontextussal rendelkezik a küldött MIDI parancs típusától függően:

  • Programváltozás alértékek MSB/LSB igazodással rendelkezik. Ezek az értékek pont elválasztva vannak, az MSB a bal oldalon, az LSB pedig a jobb oldalon.
  • Vezérlésváltozás a vezérlés értéke ennek segítségével. A szám 0 és 127 között lehet. Ha nincs megadva, akkor a 127 érték feltételezésre kerül.
  • Nota esemény a sebesség alértékével rendelkezik, amelynél a nota játszódnia kell. Ez 0 és 127 közötti numerikus értékre állítható be.

Példák

Kezdjük egy egyszerű programváltozással. Ebben a forgatókönyvben az 1. csatornán a 8-as programváltozást használjuk, amely MSB 4-et és LSB 2-t is küld. A példa a legbonyolultabb variációval kezdődik, és eltávolítja a bankválasztást és a csatornát, hogy szélesebb körűvé váljon:

PC3.1:7@0, 3.1:7@0, 3:7@0, 3:7, 7@0, 7

A vezérlésváltozások hasonlóak, azzal a különbséggel, hogy a szintaxis bal oldala a vezérlésváltozás száma, a jobb oldala pedig egy opcionális érték. Ha az érték nincs megadva, akkor 127 kerül elküldésre. Az 106-os vezérlésváltozást 64-es értékkel a 3. csatornán fogjuk küldeni.

CC105:63@2, CC105:63. CC105@2, CC105

Most vegyünk egy pillantást a nota eseményekre. Ha a C4-et a 8. csatornán 75%-os sebességgel szeretnénk játszani, a következőt kell megadnunk, mivel az OnSong a MIDI C0-t 0-ként számolja a MIDI nota skálán:

N60:95@7, N60@7, N60:95, N60

Ismét fontos megjegyezni, hogy ahogyan az értékek eltávolításra kerülnek a MIDI szintaxisból, a MIDI utasítás szélesebb körűvé és kevésbé specifikusvá válik. Például a nota esemény utolsó verziója a C4-et 100%-os sebességgel az összes csatornán küldi el.

Ha késleltetést szeretne megvalósítani más MIDI-események között, használja a WAIT parancsot egy számmal. A szám egész szám lehet. A várakozási másodperceket 1-10 másodpercként vagy milliszekundumként határozhatja meg. Az alábbi példa bemutatja, hogyan kell 2 másodpercet, 10 másodpercet és fél másodpercet várni.

WAIT2, WAIT10, WAIT500
OnSong 2026 — Utolsó frissítés: January 17, 2018