Cs. Kádár Péter - XXI. századi diszkónika, 258. Kontrolláld a micsodádat!

A midi hangvezérlő csatornaüzeneteinek legfurcsább csoportját nevezhették volna úgy is, hogy micsodák. Ez azonban valószínűleg prűdségileg tiltott lett volna, továbbá beismerése annak, hogy vannak olyan parancsok, amelyeket nem lehet máshová begyömöszölni.

A midi leírásaiban gyakran találkozhatsz az MSB, LSB rövidítésekkel. Ezek sem mumusok, csupán azt jelentik, hogy a digitális információk tárolása, továbbítása és értelmezése milyen sorrendben történik. Az MSB (most significant bit) a legnagyobb helyiértékű bitet jelenti, vagyis azt, hogy tárolás, továbbítás, értelmezés balról jobbra történik, az LSB (least significant bit) ennek fordítottja. Olyan ez, mint a különféle nyelvekben a dátum leírása, pl. 2020.10.03 vagy 03.10.2020. Ebben a példában az évszámot, a hónapot és a napot egy-egy bitnek tekintjük. Nyilván nem mindegy, hogy ha változtatsz, az évezred ugrik-e egy-egy értékkel vagy csak egyetlen nap. Tehát álljon akárhány számjegyből egy szám, az MSB az mindig balról nézve az első számjegyet jelenti, az LSB pedig jobbról az első számjegy. Ha egy midi üziben valamely paraméter után ezen rövidítések egyike áll, akkor abból azt lehet tudni, hogy az adott vezérlő gombjainak csavargatása az éppen aktuális szám mely számjegyeit fogja változtatni. Feltételezem, hogy nem akarsz hirtelen midit programozni, ezért nem mélyedek el ennek részleteiben. (És igen, létezik kevert változat is, hogy teljes legyen az öröm, de a midiben ezt nem használják.)

A vezérlés módosítás (controll change, cc) a legnépesebb üzenettípus, amely igen különböző célokat szolgál. Eredetileg az volt a feladata, hogy a zenei előadás valamennyi, a korábban ismertetettekbe nem sorolható kifejezési eszközének (pl. pedálok, moduláció) állapotát, annak változásait azonnal közölje a vevővel. Mint minden midi üzi, ez is állapotkóddal kezdődik, amelyik a szokásos módon a csatornát (Ch) jelöli ki, A vezérlő üzeneteit két adatbájt közli a vevővel. Az első (Number) azt, hogy melyik vezérlő eszközről – gyakran kontrollereknek nevezzük őket magyar szövegben is – van szó (billentyűzet, pedál, kapcsoló, tolattyú, stb.), a második pedig az adott vezérlés konkrét értékét (Value).

kmt02

A vezérlők sokfélék lehetnek, de alapvetően két csoportba oszthatók. Az egyik csoportnak csak két állapota van, ilyenek a nyomógombok, egyszerű kapcsolók. A kontrollerek a bekapcsolt értékre 64-től 127-ig küldenek tetszőleges számot természetesen kettes számrendszerben, a kikapcsoltra pedig 0-tól 63-ig A vevők ezek vételekor vagy bekapcsolnak valamit, ha 64-127 közötti számértékű az adatbájt, vagy kikapcsolnak, ha 0 és 63 közötti számértékű érkezik.

Mivel nagyon sok midi cc üzenet van, illetve lehetséges egy részüket egyedileg specifikálni, egy csomó honlapon megtalálható ezek táblázata; egyebek mellett az alábbi linken:

https://nickfever.com/Music/midi-cc-list

A midi cc-k egy részében MSB és LSB módon értelmezhető adatbájt is található. A midi cc üziket a midi protokoll sorszámokkal látta el, ilyenkor két sorszáma is van az adott üzenetnek. A sorszámokhoz bináris kódok tartoznak, de az egyszerűség kedvéért a 10-es számrendszerbeli értéket mutatom meg. Az adó természetesen bájtokba szervezett biteket küld a vevőnek. A legfontosabbak közé tartozik a sorozat 255. részében már említett, és a midi protokoll sorszámozása szerint a nulladik (MSB), illetve a 32. (LSB) helyen álló „bank select”, magyarul a hangbank választó. Ez arra használható, hogy ha kevés a hangkészlet 128 hangja, akkor a bővítés érdekében létrehozott, akár szintén 128 darab hangbankból kiválassza azt a gyűjteményt, amelyben a nekünk szükséges hangszer-hang van. Minden egyes hangbankban 128 hang lehet. A hangbank kiválasztását értelemszerűen a programválasztás (program change) midi üzenet követi, amely a hangbankon belül az adott hangot veszi rá a megszólalásra.

A sorszámozás szerint az 1. (MSB) és a 33 (LSB). helyen álló üzivel a modulációs kerék, a vibrátó paraméterei változtathatók. A modulációs kerék nem egyetlen, hanem egy sorozatnyi midi üzenetet küld, amelynek értékei megfelelnek annak, hogy mekkorát forgott a kerék. A kerék az üzit csak akkor küldi el, amikor masszírozod a kereket. Ha bármilyen helyzetben megállítod a kereket, a midi-információk továbbadása megszűnik. Vagyis ha az egyik szintetizátoron tekergetjük a modulációs kereket, akkor a midi kapcsolatban levő, és az adó által megjelölt csatornákra beállított szintetizátorok vagy a számítógépes midi eszköz, program hangjára is hatással lesz a tekergetés.

Ezt a típusú midi üzit nemcsak kerékkel tudod aktiválni, de a midi protokoll alkotói a legcélszerűbbnek a modulációs kereket tartották. A modulációs kerék mellett a gombok, a csúszkák, a pedálok egyes változatai is hasonló üzenetsorozatot küldenek, értékeket módosítanak a helyzetük változtatása, pl. forgatás következtében. Egyébként majdnem minden midi cc üzenetre érvényes, hogy a kontroller bármi lehet, ha jól van idomítva. Ahhoz, hogy modulációs módosítás gyorsan megtörténjen, a midi cc üzeneteknek is gyorsan kell követniük egymást. Előfordul, hogy egy-egy üzi kimarad, de az – ha jól programozták a vevőt - alig vehető észre.

A 2. (MSB) és a 34. (LSB) helyre a légzésvezérlő üzit tették a midi protokollban.

A célszintetizátorok egy része működtethető úgy is, hogy belefújsz a hangszer vezérlőjébe, és ugyanúgy játszol rajta, mintha akusztikus hangszer lenne. A légzésvezérlő kontrollerben olyan érzékelő van, amely átalakítja a légnyomást és annak változását elektromos jelekké, és lehetővé teszi a hangmagasság-szabályozását egy ajaknyomás-érzékelőn és egy görgőn keresztül. Egyes modellek konfigurálható billentyű elrendezést tartalmaznak, amely utánozhatja a különböző akusztikus hangszerek fogási rendjét.

A légzésvezérlő midi üzivel modulációs effekteket vagy billentyűkövetést is lehet varázsolni. Ügyes népek házilag készítenek légzésvezérlő kontrollert.

A 4. (MSB) és a 36. (LSB) sorszámon az egyszerű lábpedál szerepel, az 5.(MSB) és a 37.(LSB) helyen a portamento (lásd a sorozat 227. részét) idejét lehet változtatni, a 7. (MSB) és a 39. (LSB) sorszámon az adott csatorna hangereje módosítható, a 8. (MSB) és a 40. (LSB) hely a sztereó egyensúlyé, a 10. (MSB) és a 42. (LSB) sorszámmal a panorámázás üzijét jelölik, vagy azt az utasítás sorozatot, amellyel egy monó jelet el lehet mozgatni a hangképben a bal és a jobb oldal között.

A 11. (MSB) és a 43. (LSB) sorszám után egy érdekes cucc szerepel, az expressziós pedál. Nem csoda, hogy ennek a varázspedálnak nem sikerült magyar elnevezést találni, a „kifejezés” tükörfordítás elég béna. A lényege az, hogy többféle funkciót is rendelhetsz hozzá, pl. mindenféle effekteket, s ezeket egyszerre is módosíthatod vele. Egyes típusain a szabályozási tartomány is beállítható. Alapból ezek a pedálok is 0 és 127 között adhatnak adatokat, ám ezt a tartományt szűkítve, finomabb szabályozásra is használhatók. A szabályozás karakterisztikája – lineáris vagy másmilyen – is beállítható. Vagy az is, hogy amikor még nem nyomtad le a pedált, a legnagyobb vagy a legkisebb értéket büfögje-e ki magából?

Kedvenc hangmunkaállomásommal, a Reaperrel is használható az expressziós pedál, noha a beállítása nem a legegyszerűbb, ha a feladat is bonyolult.

Az expressziós pedált eredetileg a sípos orgonákhoz találták ki. A sípos orgonák hangerejét redőnyös szerkezettel (lásd a sorozat 183. részét) lehetett szabályozni, és a redőnyt távvezérelték expressziós pedállal. Az akusztikus orgona expressziós pedálja általában olyan, mint a gépkocsik gázpedálja, csak sokkal nagyobb. Akár részben, akár teljesen be van süllyesztve, és közvetlenül az orgona pedálsora fölött vagy jobb oldalán helyezkedik el . Amint a pedált előre nyomják a lábujjakkal, a hangerő megnő; ha a láb sarkával nyomják, a hangerő csökken. A midiben is azt a célt szolgálta a kezdeti időkben, hogy olyan hangerő pedálok üzijeit közölje, amelyeken a hangerő szabályozási tartományt lehetett szűkíteni.

kmt03

Vannak olyan sípos orgonák, amelyekben több expressziós pedál is van, ezekkel különböző módokon szabályozzák a hangerőt.

kmt04

A midiben is azt a célt szolgálta az expressziós pedál üzenet a kezdeti időkben, hogy olyan hangerő pedálok parancsait továbbítsa vagy tárolja, amelyeken a hangerő szabályozási tartományt lehetett szűkíteni. Az akusztikus orgona pedálsorát utánzó midi pedál egyik típusában a hangerő szabályzást (bal) különválasztották a többi expressziós pedáltól (jobb).

kmt05

S most ugorjunk egy nagyot, mert minden cc-t nem érdemes bemutatni! A 64-es sorszámú hely a sustain pedálé, vagyis e pedállal lehet a kitartott hang hosszúságát változtatni úgy, hogy a bekapcsolást a 64 és annál nagyobb midi adatkódra, a kikapcsolást a 64-nél kisebb adatkódra hajtja végre a vevő. Hasonló a helyzet a 65-ös sorszámú portamento pedállal. A 71. sorszámú helyen levő midi üzivel a rezonáns szűrő paramétereinek változtatása, a 74. helyen levővel pedig egy aluláteresztő szűrő vágási frekvenciája állítható be.

A midi cc-be olyan üzik is kerültek, amelyeket csakis úgy szabad megvalósítani, ahogy azt a midi protokoll előírja (regisztrált paraméterek, RPN), és olyanok is, amelyekre vonatkozik ilyen kötöttség (NRPN). Ez utóbbiakkal lehetővé válik, hogy nem 128 (hét bit), hanem 128*128 (14 bit) lépésben lehessen valamilyen paramétert változtatni.

A midi protokollban van néhány furcsaság. Ilyen, hogy a négy csatornamód üzenetet - omni on, poly; omni on, mono; omni off, poly; omni off, mono is a cc üzik közé rakták, végére, a 124-127. sorszámú helyre. Ezeket megelőzően, a 120. sorszámú helyre került a minden hang elnémítása, a 121-re a minden kontroller és a hajlítás alaphelyzetbe állítása, a 122-re pedig a „Local control” ki-be kapcsolása. Ez utóbbi azt jelenti, hogy a szintetizátor saját billentyűzetét le lehet választani a hangszer saját hanggenerátorairól, vagyis bármit nyomkodunk, tekergetünk rajta, a szintetizátor meg se mukkan, csak a midi kimeneten jelenik meg az üzi. A 123. helyre került az „all notes off” cc üzenet, aminek észlelésekor a vevő minden, kitartási fázisban levő hangja lecseng.

Ezzel ugyan a midi üzenetek legnagyobb csoportjának leggyakoribb parancsaival végeztünk, de még nem látni az alagút végét. (Nem igaz, én látom, de nekem könnyű.) Ismét lazíts kicsit, lesz ez izgalmasabb is.