MIDI Audio-Technik
Author D. Selzer-McKenzie
YoutubeVideo: https://youtu.be/Ic5A5Wu4ppI
Drei verschiedene Anschlüsse sind beim MIDI-Standard verfügbar: MIDI-Out, MIDI-In und MIDI-Thru. Nicht alle Instrumente oder Geräte, die sich für MIDI-Applikationen eignen, sind auch immer mit allen drei Anschlussarten ausgerüstet.
MIDI-Out. Daten, die ein MIDI-Instrument oder ein Steuercomputer ausgibt, liegen an der Buchse MIDI-Out an. Nicht alle MIDI-Instrumente weisen diesen Anschluss auf, mitunter lassen sich solche MIDI-Instrumente auch nur steuern. Ein Steuercomputer allerdings verfügt grundsätzlich über MIDI-Out.
NIIDI-In. An den MIDI-In-Anschluss eines MIDI-Instruments gelangen die Daten eines steuernden Organs (also z. B. auch ein MIDI-Instrument oder ein Steuercomputer). Die verschlüsselten Daten gelangen vom MIDI-In-Anschluss zu einem Prozessor innerhalb des MIDI-Instruments und werden dort interpretiert und als Befehle und Daten bei der Klangerzeugung ausgeführt.
MIDI-Thru. Um die Daten eines Gerätes, die aus seiner MIDI-Out-Buchse kommen. für mehr als nur ein MIDI-Instrument verwenden zu können, müssen letztere einen durchschleifenden Datenausgang besitzen. Ein solcher MIDI-Thru-Ausgang leitet also sozusagen nur die an MIDI-In anstehenden Daten weiter; allerdings muss der Anschluss gegenüber dem Eingang entkoppelt sein, d. h. er muss einen eigenen Treiberverstärker verwenden. Der Grund dafür liegt in der Tatsache, dass die MIDI-In-Eingänge eine Belastung darstellen, welche normalerweise nur jeweils einmal Ru- jeden Ausgang auftreten darf.
4.1.2 Verschaltung von MIDI-Instrumenten und -Geräten
Jr nach dem MIDI-Ablaufprogramm kommen unterschiedliche Verschaltungen von INIUDI-Instrumenten bzw. -Geräten in Frage. Abbildung 4.1 zeigt zwei prinzipiell outerschiedliche Verbindungsschemata.
MIDI-Out}
Steuercomputer,
Zentral-Keyboard
oder
Sequencer
MIDI-In
MIDI-In
MIDI-Instrument b)
t MIDI-Out
Abb. 4.1 MIDI-Verschaltungen: a Lineare Verschaltung, Geräte erhalten die Daten über die Thru-Buchse des vorangehenden Instruments oder Geräts. b Zirkulare Verschaltung, bei der das gesteuerte Instrument oder Gerät auch seinerseits wieder Daten zurückgibt
Beide Arten der Verschaltungen können u. U. auch gemischt werden.
Bei der linearen Verkettung gibt es in der Praxis selbstverständlich eine Grenze in Bezug auf die Anzahl der verbundenen Geräte. Dieses Limit hängt mit der Laufzeit zusammen, die die Schnittstelle zwischen MIDI-In und MIDI-Thru erzeugt. Daraus resultierende Timing-Fehler addieren sich und ergeben eine hörbare Beeinträchtigung in der Steuerung, sobald eine gewisse Anzahl von in Serie geschalteten Geräten überschritten ist. Zur Verbesserung dieses Verhaltens ist es ratsam, MIDI-Geräte mit schnellen Optokopplern einzusetzen, was bei den heutigen Bauelementen keine Sorge mehr bereiten sollte. Anstiegs- und Abfallzeit sollten jeweils unter einem Wert von 2µs liegen, was z. B. vom Typ 6N138 oder PC900 erfüllt wird.
4.1.3 Ausführung der Schnittstelle
Steuergrößen. Es handelt sich bei MIDI um eine serielle Schnittstelle, die im Stromschleifen-Modus arbeitet. Diese Betriebsart ist nicht so störungsanfällig wie eine Steuerung mit Spannungssignalen (der Nachteil ist jedoch, dass die Ankopp-lung nicht lastfrei erfolgen kann). Der Strom beträgt 5 mA, wobei Stromfluss eine logische 0 bedeutet (Abb. 4.2).
Datenprotokoll. Die Datenrate beträgt 31,25 kBaud (± 1%), der Datenfluss isi asynchron, und ein Zeichen benötigt ein Start-Bit, 8 Daten-Bits und ein Stop-Bit Aufgrund der Datenrate besteht keinerlei Verwandtschaft mit der seriellen RS232-Schnittstelle; letztere lässt sich daher nicht für MIDI-Zwecke heranziehen. Zut Übertragung eines Zeichens sind daher für je 10 Bit 320 tts notwendig. Das Start-Bit ist eine logische 0 (Strom ein) und das Stop-Bit eine logische 1 (Strom aus). Bei dei
.4.13b. 4.2 Elektronische Ankopplung der Interface-Schaltung an die Buchsen. Die zu den An--ahlüssen Thru und Out führenden Gatter sind normalerweise als Open-Collector-Device oder als Transistor ausgeführt — ein Strom kann somit nur fließen, wenn eine Verbindung mit der entspre-- henden Plusleitung besteht; außerdem besteht so keine Gefahr eines Kurzschlusses, falls einmal wei Ausgangsanschlüsse miteinander verbunden werden. Der Standard schreibt ebenfalls eine Zah anische Trennung am MIDI-In-Anschluss vor, was mittels Optokoppler bewerkstelligt wird. auf diese Weise sind Störungen. die aufgrund von Masseschleifen immer zu befürchten sind, ermeidbar
_:bertragung von Mehr-Byte-Daten erscheint zuerst das LSB und zuletzt das MSB Datenformat nach Intel). Außerdem erfolgt die Übertragung eines Bytes ebenfalls dem niederwertigsten Bit und endet mit dem höchstwertigen. Abbildung 4.3 ver-_ _dicht nochmals dieses Datenprotokoll anhand eines zu übertragenden Zeichens, mmandos oder Wertes.
Logikpegel = H Strom aus
Logikpegel = L Strom ein
Verbindungen. Als Anschlüsse dienen Steckverbindungen nach DIN 41524 (Diodenverbindung 5-polig, 180°), wobei die Geräte immer mit Buchsen ausgestattet sind, während die Leitungen jeweils an beiden Enden Stecker aufweisen. Siehe hierzu auch Abb. 4.5. Das positive Potenzial liegt jeweils an den Kontakten 4, und die Kontakte 1 und 3 sind unbelegt und dürfen auch nicht verwendet werden. Kontakt 2 hat Erdpotenzial und dient lediglich Abschirmzwecken; als Bezugspotenzial darf dieser Kontakt nicht zur Anwendung kommen und sollte auch nicht mit dem Masseanschluss verbunden sein (diese Forderung lässt sich jedoch in der Praxis nicht immer erfüllen). Einzelne Leitungen sollten eine Maximallänge von ca. 15 m nicht überschreiten, und beide Adern sind vorzugsweise verdrillt (mit gemeinsamer Abschirmung) zu wählen.
Audiokarten, die für MIDI-Applikationen geeignet sind, setzen häufig 9polige Sub-D-Buchsen ein, um alle drei MIDI-Anschlüsse darin zu vereinigen. Da jedoch diesbezüglich noch keine allgemeingültigen Festlegungen gelten, muss hier auf eine Wiedergabe von Anschlussschemata verzichtet werden. Adapterkabel splitten diesen Anschluss üblicherweise auf dem kürzesten Wege in die drei gewünschten Diodenkupplungen.
4.2 MIDI-Software-Standard
Zur Steuerung von MIDI-Instrumenten und -Geräten müssen bezüglich des Datenformats genaue Richtlinien befolgt werden. Es gibt in der Struktur der MIDI-Daten eine Reihe von unterschiedlichen Botschaftstypenl, welche wir im folgenden etwas näher betrachten wollen.
4.2.1 Begriffserläuterungen
In den folgenden Abschnitten werden immer wieder die gleichen Begriffe auftauchen, die jedoch zum Teil zu Missverständnissen führen können. Leider haben sich bislang terminologisch keine Vereinheitlichungen ergehen, so dass hier keine Anpassung an eine bestehende Terminologie vorgenommen werden kann. Deshalb sollen an dieser Stelle zunächst einige Erklärungen abgegeben werden, die allerdings nur innerhalb dieses Werkes gelten.
Instrument. In diesem Zusammenhang muss eine klare Trennung zwischen physischem und virtuellem Instrument stattfinden. Während ein physisches Instrument immer eine komplette Einheit darstellt und in sich abgeschlossen ist, kann sein Klang nicht immer eindeutig definiert werden. Betrachten wir z. B. elektronische Tasteninstrumente, welche sehr oft auf vielerlei Instrumentenklänge einstellbar sind. Ein solches physisches Instrument kann also mehrere virtuelle Instrumente sozusagen beinhalten, von denen wir jedoch definitiv den spezifischen Klang vorhersagen können (also z.B. Violine, Flöte, Gitarre usw.). Wenn in den folgenden Ausführungen der Ausdruck Instrument fällt, so ist dort immer ein virtuelles Instrumeni
gemeint. Bei MIDI-Geräten oder -Instrumenten fällt in diesem Zusammenhang immer wieder der Ausdruck multitimbral, was lediglich ein werbewirksamer Ausdruck für die Tatsache ist, dass mehrere Instrumentenklangfarben gleichzeitig verfügbar sind, die jedoch auf einzelne Kanäle zu verteilen sind (siehe auch Programm).
MIDI-Instrument. Einheiten, die einem physischen Instrument entsprechen, also durchaus verschiedene spezifische Klänge erzeugen und somit mehrere virtuelle Instrumente nachbilden können, nennen wir nachfolgend MIDI-Instrument. Voraussetzungen hierfür sind jedoch, dass eine Ansteuerung durch MIDI-Steuerimpulse möglich ist und dass eine Klaviatur oder ein Griffbrett zur manuellen Bedienung vorliegt. Keyboard-Synthesizer, die sowohl eine unabhängige Klangerzeugung als auch eine MIDI-Schnittstelle aufweisen, sind Beispiele für MIDI-Instrumente.
MIDI-Gerät. Dies entspricht einem MIDI-Instrument mit der Einschränkung, dass keine Möglichkeit der manuellen Bedienung besteht, d. h. es existiert keine Klaviatur. In den nachfolgenden Ausführungen dieses Kapitels taucht häufiger der Begriff MIDI-Gerät häufiger auf als der Begriff MIDI-Instrument. Jedoch kann grundsätzlich davon ausgegangen werden, dass die jeweils angesprochenen Belange auch \IIDI-Instrumente betreffen. Umgekehrt ist dies natürlich nicht immer der Fall, vor allem wenn es explizit um die Klaviatur oder das Griffbrett geht. Als Beispiel für ein MIDI-Gerät kann eine Audiokarte gelten.
Manuelles MIDI-Steuergerät. Es handelt sich hierbei im Gegensatz zum MIDI-Gerät um eine Klaviatur oder ein Griffbrett, das lediglich MIDI-Steuerimpulse ausgeben kann. Zusammen mit einem MIDI-Gerät ergibt sich ein MIDI-Instrument. MIDI-Keyboards, die über keine interne Klangerzeugung verfügen bzw. sie in der entsprechenden Situation nicht benötigen, stellen Beispiele dar.
automatisches MIDI-Steuergerät. Die MIDI-Steuerimpulse entstehen hier nach _lern Start eines Ablaufprogramms. Eine Klaviatur kann, muss aber zur Program--nierung nicht vorhanden sein. Sequenzer sind ein Beispiel hierfür.
Stimme. In einem MIDI-Gerät ist eine Klangerzeugung integriert, die es je nach zahl verfügbarer Stimmen erlaubt, auch simultan umzusetzende Noten wieder-_ _.hen. Zu verwechseln ist der Ausdruck Stimme jedoch nicht mit Instrument, _ eine mehrstimmige Abfolge von Noten bedeutet nicht hinreichend, dass auch zr-sere (virtuelle) Instrumente daran beteiligt sind. Zur Veranschaulichung möge Vorstellung dienen, an einer Gitarre würden alle sechs Saiten gleichzeitig an-,.:-_-,zhlagen. In diesem Falle handelt es sich um ein 6stimmiges Instrument. Beim weniger Saiten wird dieser Stimmenumfang jedoch nicht vollständig aus,
erev-amm. Einem einzelnen Programm ist ein spezifischer Klang zugeordnet,
. ,n einem (virtuellen) Instrument stammt. Der MIDI-Standard lässt 128 _ iedene Programme zu, die nur noch über eine Nummerierung (der sog. --.:mm-Nummer) angesprochen werden. Die mit einer bestimmten Programm- Tier verbundenen Klangfarbe wird auch oft mit Timbre bezeichnet. Während gramm-Nummern im Sprachgebrauch einen Bereich von 1-128 abdecken,
liegen die Datenwerte als 7-Bit-Format um 1 niedriger, reichen also von 0-127. Zu unterscheiden sind Programme, die einen Steuerungsprozess bewirken (also eine Aneinanderreihung von MIDI-Anweisungen und -Daten darstellt); diese werden Ablaufprogramm genannt.
Aftertouch. Dieser feststehende englische Begriff steht für den Anschlagsdruck einer Taste nach dem ersten Betätigen. Dieser Parameter kann unterschiedliche Auswirkungen zeigen; im einfachsten Falle reguliert er die Lautstärke während dem Halten einer Taste. Aftertouch ist jedoch nicht nur Kriterium für physische Vorgänge, sondern stellt auch eine virtuelle Größe dar, die sich mittels MIDI-Datenübertragung verarbeiten lässt.
Velocity. Dieser ebenfalls aus dem Englischen stammende Begriff ist eigentlich wörtlich übersetzt gleichbedeutend mit Geschwindigkeit. Gemeint ist hier jedoch die Anschlagsgeschwindigkeit einer Taste und die damit erreichte Lautstärke bzw. Anschlagsdynamik beim Anklingen einer Note. Ähnlich dem Aftertouch kann die Velocity Datenwerte im Bereich 0-127 annehmen und als MIDI-Information übermittelt werden.
Master und Slave. Innerhalb eines MIDI-Netzes gibt es verschiedene Kategorien der Priorität. Ein Gerät, das als Master fungiert, gibt Daten an seiner MIDI-Out-Buchse aus und steuert damit Slaves. Ein Master ist zunächst einmal unabhängig und gibt nur Daten aus, ohne auf welche von außen zu reagieren (i. Allg. ist seine MIDI-In-Buchse nicht belegt). Ein Sequenzer übernimmt beispielsweise meist die Stelle des Master.
Notennummer. Sie korrespondiert mit der Tonhöhe einer Note und spezifiziert somit die vertikale Position in der Notation. Die Note C4 (mittleres C) repräsentiert eine Notennummer von 60 innerhalb des erlaubten Bereichs von 0-127.
4.2.2 Überblick zu den MIDI-Messages
Jegliche Vorgänge, die über MIDI initiiert werden sollen, erfolgen durch die Übermittlung von einzelnen Bytes. Wie viele Bytes ein bestimmter Vorgang dabei benötigt, hängt von letzterem ab. Wie in der Assembler-Programmierung üblich, so gibt es auch bei MIDI ein den Vorgang klassifizierendes Byte, welchem ggf. spezifizierende Daten-Bytes folgen. Die klassifizierenden Bytes nennt man Status-Bytes. Zur eindeutigen Identifizierung ist hei einem Status-Byte immer das MSB auf 1 gesetzt, während Daten-Bytes ausnahmslos eine 0 beim MSB aufweisen und somit einen gültigen Wertebereich von maximal 0-127 nicht überschreiten dürfen. Abbildung 4.4 verdeutlicht diesen Unterschied. Jegliche MIDI-Message lässt sich in eine Art Stammbaum einordnen, welcher die Untergliederung aller Messages darstellt (Abb. 4.5). Zu erkennen ist eine Aufspaltung in zwei große Gruppen, nämlich der Channel Messages und der System Messages.
4.2 MIDI-Software-Standard
Abb. 4.4 Zustände des MSB beim Status- und Daten-Byte sowie die gültigen Wertebereiche
Status-Byte (80H FFH)
Bit 5
Daten-Byte (00H 7FH)
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
MIDI-Message
Channel Voice
Channel Mode
System
Exclusive
System
Common
System
Real Time
Abb. 4.5 Gliederung von MIDI-Messages
4.2.3 Channel Message
Um gezielt einzelne Instrumente ansprechen zu können, sind unterschiedliche Kanä-.e adressierbar. Es ist aber zu beachten, dass ein MIDI-Instrument bezüglich des Datentransfers nicht immer auf einen Kanal beschränkt sein muss. Die Adressierung .k-s Kanals erfolgt immer im unteren Nibble des Status-Byte, während die Daten im fieren Nibble die Anweisung selbst spezifizieren (Channel Voice erlaubt hierzu INK.ht alle Daten, siehe Abb. 4.6). Die Kanalnummer liegt im Bereich 1 ... 16, wäh--umd der Code für das untere Nibble natürlich nur Werte von 0-15 annehmen darf.
höchstwertige Bit muss ja bei Status-Bytes immer 1 sein; die verbleibenden 17:1 Bits dürfen die Konstellationen 000-110 (binär) annehmen, der Zustand 111 ist ;Ler nicht erlaubt (dies würde einer System Message entsprechen).
Bit 7
6
5
4
3
2
1 0
1
a
a
a
n
n
n n
134
4 MIDI
Tabelle 4.1 Anweisungen zu Channel Voice (Status-Byte)
Hex
Binär
Anzahl der Daten-Bytes
Vorgang
8n
1000nnnn
2
Note aus
9n
1001nnnn
2
Note an
An
1010nnnn
2
Tastendruck nach dem
Drücken der Taste (Aftertouch)
Bn
1011nnnn
2
Steuerungsänderung
(Control Change)
Cn
1100nnnn
1
Programmänderung
Dn
110Innnn
1
Tastendruck (Aftertouch)
für gesamten Kanal
En
II lOnnnn
2
Tonhöhenänderung (Pitch)
Channel Voice. Zur Steuerung der Stimmen eines Instruments dienen die Daten des Channel Voice. Das jeweilige Instrument empfängt die Daten über den Voice Channel. Tabelle 4.1 gibt Aufschluss über die einzelnen Werte des Status-Byte.
Zu den oben genannten Anweisungen gehören unmittelbar folgende Daten-Bytes, die als solche durch eine führende Null im höchsten Bit erkennbar sind. Tabelle 4.2 zeigt die Bedeutung der einzelnen Werte. Bei der Anweisung Note an wäre auch eine Anschlagsdynamik von 0 möglich; in diesem Fall entspricht dies der Anweisung Note aus.
Steuerungsänderungen. Diese beeinflussen gewisse Parameter einer Note, so z. B. Modulation, Sustain, Pan usw. Die Art der möglichen Änderung jedoch wird durch das Steuerungsgerät selbst definiert; so lässt sich z. B. hei einem Mischpult die Pan-Position eines Kanals einstellen, was ja die Stellung der Stimme im Stereoraum beeinflusst. Tabelle 4.3 gibt eine Aufstellung der registrierten Kontrollfunktionen bzw. Steuerungen.
Vorgang Daten-Byte Hex Beschreibung
Note aus Okkkkkkk 0-7F k=Notennummer
Ovvvvvvv 0-7F v=Ausklinggeschwindigkeit
Note an Okkkkkkk 0-7F k=N otennummer
Ovvvvvvv 0-7F v=Anschlagsdynamik
Tastendruck nach dem Okkkkkkk 0-7F k=Notennummer
Drücken der Taste Ovvvvvvv 0-7F v=Tastendruck
Steuerungsänderung Ouuuuuuu 0-78 u=Steuerung (s. Tab. 4.3)
Ovvvvvvv 0-7F v=Steuerungswert (s. Tab. 4.41
Programmänderung Ovvvvvvv 0-7F v=Programm-Nummer-1
Tastendruck (Aftertouch) für alle Kanäle Ovvvvvvv 0-7F v=Tastendruck
Tonhöhenänderung Ovvvvvvv 0-7F v=Änderung (LSB, MSB)
(Pitch) Ovvvvvvv 0-7F
4.2 MIDI-Software-Standard 135
Tabelle 4.3 Steuerungsparameter zu Steuerungsänderung
Steuerung (Hex) Zu ändernder Parameter
Steuerung (Hex) Zu ändernder Parameter
00
Bank-Auswahl (-Select)
43
Soft-Pedal
01
Modulation
44
Legato-Fußschalter
02
Atem-Steuerung
45
Hold 2
03
undefiniert
46-4F
Sound-Steuerung 1-10
04
Fuß-Steuerung
50-53
allgemeine Steuerungszwecke
05
Portamento-Zeit
54
Portamento-Steuerung
06
Ankündigung für MSB
55-5A
undefiniert
07
Hauptvolumen
5B
Tiefe externer Effekte
08
Balance
5C
Tremolo-Tiefe
09
undefiniert
5D
Chorus-Tiefe
OA
Panorama (Pan)
5E
Celeste-Tiefe (Verstimmung)
OB
Expression (Ausdruck)
5F
Phaser-Tiefe
0C—OD
Effektsteuerung 1-2
60
Daten-Inkrement
0E—OF
undefiniert
61
Daten-Dekrement
10-13
allgemeine Steuerungszwecke
62
unregistrierter Parameter LSB
14-1F
undefiniert
63
unregistrierter Parameter MSB
20-3F
wie 00-1F, jedoch mit zwei
64
registrierter Parameter LSB
folgenden Werte-Bytes
65
registrierter Parameter MSB
40
Dämpfungspedal
66-77
undefiniert
41
Portamento
78-7F
reserviert für Channel Mode
42
Sostenuto
Dem Byte mit der Steuerungsnummer folgt mindestens ein Byte mit dem Steuerungswert. Einige Positionen in Tab. 4.3 stellen Schaltfunktionen dar, die also lediglich zwei Steuerungswerte einstellen können. Byte-Werte bis 3F werden dabei normalerweise als aus und Werte von 40-7F werden als ein interpretiert. Daneben es Steuerungsarten, welche kontinuierliche Steuerungswerte erfordern; man-,:he davon ermöglichen sogar eine doppelte Auflösung und verlangen 2 folgende Daten-Bytes (bei den Steuerungen 20-3F). Das entspricht einer Auflösung von :4 Bit (je 7 Bit pro Byte), was einer Rasterung von 16384 entspricht. Während .ler niedrigste Steuerungswert (00) dem Fehlen des Effektes und der höchste Wert em Effektmaximum entsprechen, so nehmen die drei Steuerungsparameter Balan-Panorama und Expression eine gewisse Sonderstellung ein, weshalb wir hier die Steuerungswerte anhand der Tab. 4.4 etwas näher erläutern wollen.
Die Steuerungsparameter 64H und 65H (siehe Tab. 4.3) kündigen das LSB bzw. der registrierten Parameter an, die mit dem Pitch (Tonhöhenlage eines Instru-
_ I zu tun haben. Tabelle 4.5 zeigt einen Ausschnitt registrierter Parameter und
- Bedeutungen.
Wahrend der Pitch-Bereich lediglich die Einstellweite für eine individuelle Ton' _T.änderung definiert, basieren Feine Stimmung und Grobe Stimmung auf eine
_ Frequenzänderung; außerdem erlauben sie ein unmittelbar darauffol-
. - Stimmen, indem nur noch Transponierungs-Werte anzuhängen sind. Bei der
-:immung bestehen diese aus zwei Bytes, die eine Schrittzahl von 8191 nach .nd 8192 nach unten zulassen, um damit eine Verstimmung um ± 100% er. - 71 zu können. Die Grobstimmung hingegen erfordert nur ein Byte und besteht
Tabelle 4.4 Steuerungswerte für spezielle Steuerfunktionen
Parameter Steuerungswert (Hex) Wirkung
Balance
Panorama
Expression
00
40 7F
00
40 7F
00
40 7F
volle Lautstärke links gleiche Lautstärke links volle Lautstärke rechts
Position ganz links Position Mitte
Position ganz rechts
kein Lautstärkenzuwachs halber Lautstärkenzuwachs voller Lautstärkenzuwachs
Tabelle 4.5 Registrierte Parameter bei der Steuerungsänderung
Parameter-Nr. Parameter-Nr. Registrierter Auflösung der folgenden
LSB MSB Parameter Daten-Bytes
00 00 Pitch-Bereich
01 00 Feine Stimmung
02 00 Grobe Stimmung
03 00 Programm-Stimmung
04 00 Bank-Stimmung
1/128 Halbton
1/8192 der Frequenz
1/64 der Frequenz (nur 1 Byte)
somit nur aus 63 Stufen nach oben und 64 Stufen nach unten für eine Bewegung von wiederum ± 100%. Daraus lassen sich folgende Beispiele für MIDI-Daten ableiten: B3 64 00 65 00 40 01 --> Pitch-Bereich auf 1,5 Halbtöne einstellen (Kanal 3) B2 64 01 65 00 51 40 —+ Feine Stimmung um 1% nach oben (Kanal 2)
Programmänderungen. Ein Wechsel der Programm-Nummer bedeutet eine Umschaltung zum voreingestellten Klang eines Instruments. Damit kann also ein Instrumentenwechsel l verbunden sein, oder aber es wird einfach eine andere Klangeinstellung gewählt.
General MIDI hat — wie wir später noch sehen werden — genau 128 verschiedene Instrumente definiert. Damit korrespondieren die Programm-Nummern 0-127. Darüber hinaus erlauben jedoch z. B. auch Audiokarten eine Klangänderung der 128 Instrumente. Ferner kann eine Aufteilung der Instrumente bestehen, so dass die Instrumente 0-31 von Audiokarte A, die Instrumente 32-63 von Karte B usw. bereitgestellt werden.
Als Channel-Voice-Information stellt die Programmänderung somit eine Zuordnung des MIDI-Kanals und des verwendeten Instruments dar. Sehr häufig fällt in diesem Kontext der englische Ausdruck Patch, was man jedoch nicht auf ein einzelnes Instrument beziehen sollte. Ein Patch steht vielmehr für eine bestimmte Anordnung der Instrumente und deren Bezeichnungen innerhalb des Programmbereichs. So könnte man z. B. die Anordnung General MIDI nennen, wenn das Patch entsprechend zusammengesetzt ist.
Tonhöhenänderung. Zur Stimmung eines Instruments kann nach dem entsprechenden Status-Byte (1110nnnn, siehe Tab. 4.1) die gewünschte Transponierung
Tabelle 4.6 Besondere Werte für die Tonhöhenänderung
LSB (Hex) MSB (Hex) Wirkung
00 maximale Pitch-Änderung nach unten
‘-jo 40 keine Änderung
-F 7F maximale Pitch-Änderung nach oben
40 1/16384 des Pitch-Bereichs nach oben
-F 3F 1/16384 des Pitch-Bereichs nach unten
über zwei folgende Daten-Bytes angegeben werden. Es handelt sich dabei um einen Einstellbereich, der in der Steuerungsänderung in registrierten Parametern zuvor Jefiniert wurde (siehe Tab. 4.5). Die Bewegung innerhalb dieses Bereichs erfolgt furch die Angabe der beiden Werte-Bytes für die Tonhöhenänderung. Tabelle 4.6 i:bt Aufschluss über die Wirkung bestimmter Werte.
Tustendruck (Aftertouch). Nach den Tab. 4.1 und 4.2 gibt es zwei spezifische Inter-:retationen für den Tastendruck. Einmal kann für jede einzelne Note ein separater 'Kerl für den Tastendruck angegeben werden. Dies soll i. Allg. die Dynamik nach .:i.zrn Anschlag (also beim Halten einer Taste) beim Spielen von Soli bestimmen. Was K.:-....toch letzten Endes der Tastendruck beeinflusst, ist von den Einstellungen bzw. ,Ire2ebenheiten des MIDI-Gerätes abhängig (dies kann Lautstärke, Timbre, Vibrato 2s,Ä. sein).
Erfolgt eine Definition des Tastendrucks für den gesamten Kanal, so wirkt sich zes auf alle gespielten Noten des entsprechenden Kanals aus. Somit ändert sich das
_ des gesamten Instruments, welches diesem Kanal zugeordnet wurde.
nannel Mode. Das Status-Byte für eine Channel-Mode-Message zeigt einen
* _ nach Abb. 4.7 und gleicht damit dem Status-Byte für Channel Voice bei
- Steuerungsänderung.
_ --. eine Anweisung für Channel Mode klar von Channel Voice (mit dem Status_ Bn) zu unterscheiden, liegt das folgende Daten-Byte im Bereich 79H-7FH, ür Channel Voice nicht erlaubt ist (siehe Tab. 4.2/Wert für n).
elle 4.7 zeigt eine Liste aller Channel Modes.
_ der Omni-Mode unabhängig vom Zustand Mono oder Poly (beide Modi ...en sich gegenseitig aus) geschaltet werden kann, gibt es für Daten empfan-- MIDI-Geräte 4 verschiedene Modi, die aus Tab. 4.8 hervorgehen.
zfndem Byte mit
--1-7FH
oberes Nibble
Bit 7 6 5 4
Anweisung (fest)
unteres Nibble
3 2 1 0
n
Kanal
78 00 alle Klänge aus
79 00 Reset-Initial für alle Steuerungen
7A 00 Lokale Steuerung aus
7A 7F Lokale Steuerung ein
7B 00 alle Noten aus
7C 00 Omni Mode aus (alle Noten aus)
7D 00 Omni Mode ein (alle Noten aus)
7E M Mono Mode ein (alle Noten aus, M = Anzahl der
Stimmen)
7E 00 Mono Mode ein (alle Noten aus, die Anzahl dei
Kanäle entspricht der Anzahl der Stimmen)
7F 00 Poly Mode ein (alle Noten aus)
Poly Mono Omni Modus
ein aus ein
aus ein ein
ein aus aus
aus ein aus
Mono Mode (Omni aus). Ein in dieser Betriebsart arbeitendes MIDI-Gerät interpretiert die ankommenden Informationen für seine Stimmen auf zugeordneten. separaten Kanälen. Es wird dabei jede Stimme einem Kanal zugewiesen. Besitzt MIDI-Gerät M Stimmen, so gibt es eine Zuordnung für empfangene Daten laut Abb. 4.8.
Jeder Kanal kann simultan nur eine Note am MIDI-Gerät steuern (ein-, ausschalten usw.). Der Bereich der benutzten Kanäle erstreckt sich von n bis n+ M —1. Die angegebene Kanalnummer bezeichnet in diesem Modus den sog. Basiskanal, über den exklusiv nur Modusänderungen vorgenommen werden können. Die angesprochenen Stimmen platzieren sich jedoch von einschließlich diesem bis maximal le oder bis der Stimmenvorrat des MIDI-Geräts erschöpft ist.
Kanäle
16
15
14
13 -
Tonerzeugung
Z. B. 12stimmiger Synthesizer
und
gewähltem Basic-Channel n=2
Der Mono-Modus ist vor allem dann empfehlenswert, wenn z. B. ein Gitarren-Synthesizer verwendet werden soll, bei dem ja die einzelnen Saiten jeweils mono-fone Klänge erzeugen soll, also bei einem Bundwechsel einer Saite der alte Ton unverzüglich zu verstummen. Andererseits dürfen alle Saiten für sich unabhängig klingen, was ja bei mehreren, auf die einzelnen Saiten verteilten Stimmen gelingt.
Mono Mode/Omni ein. Ein MIDI-Gerät, welches Daten in diesem Modus empfängt, reagiert auf alle Kanäle gleichermaßen. Die Steuersignale können jedoch nur eine einzige Stimme beeinflussen, alle weiteren Stimmen arbeiten nicht. Es wird hier also stillschweigend vorausgesetzt, dass M = 1 ist. Die Situation wird von Abb. 4.9 veranschaulicht. Welche Stimme des MIDI-Geräts für M > I tatsächlich angesprochen wird, hängt von ihm selbst ab.
Poly Mode. Soll ein MIDI-Gerät Informationen für mehrere Noten empfangen und korrekt verarbeiten, so muss es im Poly Mode arbeiten. Das Gerät kann verständlicherweise jedoch nur maximal M Noten zur gleichen Zeit spielen, weil eben jede Stimme für sich betrachtet nur monofon arbeitet. Befindet sich das Gerät im Omni-Modus (Modus 1), so werden die Informationen aller Kanäle berücksichtigt, Mährend bei ausgeschaltetem Omni-Modus (Modus 3) nur ein Kanal wirksam ist. Abbildung 4.10 verdeutlicht das Schema der Schaltung im Poly-Modus.
Ein Aufsplitten nach dem Knoten ist nur erforderlich, wenn mehrere Noten zur Zleichen Zeit initiiert werden (bzw. sich zeitlich überlappen), so dass das Gerät mehrere Stimmen aktivieren muss. Eine klare Unterscheidung erfolgt hier durch Sie Spezifikation des Voice Channel.
Lokale Steuerung. Soll ein MIDI-Gerät keine Daten von seinem eigenen Keyboard )der Griffbrett an die internen Generatoren senden, so muss die Lokalbetriebsart iusgeschaltet werden (siehe Tab. 4.7). Nach wie vor gelangen jedoch Daten an die MIDI-Out-Buchse und auch von der MIDI-In-Buchse in das Gerät, wo die Tonerzeuger eine entsprechende Umsetzung vornehmen (siehe Abb. 4.1 I).
-t...re Noten aus. Diese Anweisung schaltet unverzüglich alle Noten des gewählten Kanals aus. Manche MIDI-Geräte schalten bei einer solchen Operation alle Stim--.72 aus; selbst eine lokale Steuerung über das eigene Keyboard hat dann keine .74 :-kung mehr.
MIDI-Informationen Kanäle
16
15-
14
13
4
3
2
Tonerzeugung
Tabelle 4.9 Instruktionen-Folge von System Exclusive
Byte (Hex)
Byte (binär) Bedeutung
FO 11110000 Beginn von System Exclusive
<80 br="" des="" herstellers="" ldentifikationsnummer="" nbsp="" qqqqqqq=""><80 anzahl="" aten="" beliebige="" br="" bytes="" ddddddd="" nbsp="" von=""><80 aten="" br="" nbsp=""><80 aten="" br="" nbsp="">F7 1 I 110111 Ende von System Exclusive
ID-Nummer Übereinstimmung zeigt mit der Hersteller-ID des Geräts. Die entsprechenden Anweisungen sind also gerätebezogen und nicht kanalbezogen. Zweck solcher System-Exclusive-Messages ist es, Einstellungen am Gerät oder auch Sequenzer-Dumps zu übermitteln. Ferner können auch beliebige Instruktionen und Daten übertragen werden. Zum Beispiel ist es auch möglich, die Lautstärke oder das Panorama eines bestimmten Kanals voreinzustellen. Tabelle 4.9 zeigt den prinzipiellen Aufbau einer System Exclusive Message.
Alle Bytes zwischen dem Status-Byte FO und dem Abschluss F7 müssen eine 0 als MSB aufweisen. Ist die ID-Nummer 0, so folgen zwei weitere Bytes als Erweiterungen. Einen Ausschnitt der derzeit festgelegten ID-Nummern zeigt Tab. 4.10.
Bei Mehr-Byte-IDs nimmt das zweite Byte nur diskrete Werte 00, 20 usw. an. Normalerweise ist es innerhalb einer Instruktion für System Exclusive nicht erlaubt, \A eitere Status-Bytes zu senden. Es gibt drei Byte-Werte, die eine Sonderrolle spielen: 7D (für nicht-kommerzielle Zwecke), 7E (für Non-Realtime) und 7F (für Real-time). Sie dienen Spezialzwecken und erweitern die Möglichkeiten für MIDI. Das entsprechende Status-Byte wird wie eine ID behandelt und folgt unmittelbar auf das80>80>80>80>
.:- Akai 48 JVC
A AKG Acoustics 40 Kawai
X. 00 OE Alesis 42 Korg
Apple Computer 07 Kurzweil
Bontempi / Farfisa 06 Lexicon
..r. Boss 04 Moog
.....r. Casio 10 Oberheim
Clarity 41 Roland
....
Digidesign 01 Sequential
1r1 .042. Dr. Böhm 26 Solton
3J Dynaccord 4C Sony
e Emu Systems 3A Steinberg
Fairlight 4E TEAC
St Fender 03 Voyetra / Octave-Plateau
"ii Fostex OC Waveframe Corp.
"E. General MIDI 3B Wersi
:4 Hohner 43 Yamaha
I
den Beginn von System Exclusive anzeigende Status-Byte FO. Die nachfolgenden Bytes spezifizieren weiter die folgende Meldung; jedoch sind dies i. Allg. noch keine Daten-Bytes. Man kann also die Byte-Folge bei Non-Realtime und Realtime wie
folgt aufschlüsseln:
* FO 7E [Kanal] [Sub-ID 1] [Sub-ID 2] [Daten-Byte] ... F7 (Non-Realtime)
* FO 7F [Kanal] [Sub-ID 1] [Sub-ID 2] [Daten-Byte] ... F7 (Realtime)
System Exclusive/Non-Realtime. Solche Informationen werden außerhalb des
eigentlichen Abspielens übermittelt. Es handelt sich in erster Linie um den Transfer von Sampler-Dumps oder speziellen Timecode-Daten. Tabelle 4.11 zeigt die Werte
der Sub-IDs für Non-Realtime.
Tabelle 4.11 Identifikations-Bytes bei Non-Realtime-SysEx-Messages
ID 1 (Hex) ID 2 (Hex) Bedeutung
00 nicht verwendet
01 Sample-Dump-Header
02 Sample-Datenpaket
03 Sample-Dump-Anfrage
04 00 MIDI-Timecode, spezial
04 01 MIDI-Timecode, Punch-In-Punkte
04 02 MIDI-Timecode, Punch-Out-Punkte
04 03 MIDI-Timecode, Punch-In-Punkt löschen
04 04 MIDI-Timecode, Punch-Out-Punkt löschen
04 05 MIDI-Timecode, Startpunkt des Event
04 06 MIDI-Timecode, Stoppunkt des Event
04 07 MIDI-Timecode, Event-Startpunkte mit Zusatzinfo
04 08 MIDI-Timecode, Event-Stopppunkte mit Zusatzinfo
04 09 MIDI-Timecode, Event-Startpunkt löschen
04 OA MIDI-Timecode, Event-Stopppunkt löschen
04 OB MIDI-Timecode, Cue-Punkte
04 OC MIDI-Timecode, Cue-Punkte mit Zusatzinfo
04 OD MIDI-Timecode, Cue-Punkt löschen
04 OE MIDI-Timecode, Event-Name im Zusatzinfo
05 01 Sample-Dump-Erweiterungen, Mehrfachschleifenpunkte
05 02 Sample-Dump-Erweiterungen, Anfrage für Schleifenpunkte
06 01 Allgemeininformation. Identitätsanfrage
06 02 Allgemeininformation, Identitätsantwort
07 01 File-Dump, Header
07 02 File-Dump, Datenpaket
07 03 File-Dump, Anforderung
08 00 MIDI-Tuning-Standard, Bulk-Dump-Anfrage
08 01 MIDI-Tuning-Standard, Bulk-Dump-Antwort
09 01 General MIDI, System ein
09 02 General MIDI, System aus
7B Dateiende
7C Warten
7D Abbruch
7E NAK (Kennzeichen für fehlerhaften Empfang eines Datenpakets)
7F ACK (Kennzeichen für fehlerlosen Empfang eines Datenpakets)
Die letzten beiden Kennzeichen geben Aufschluss über die Übermittlungsqualität der letzten Datenpakete. Das NAK ist gleichzeitig auch eine Aufforderung an den Sender, das letzte Paket nochmals zu senden. Es werden zwar keine zweiten ID-Bytes benötigt, dafür jedoch die laufende Nummer des Pakets. Die anderen beiden Handshaking-Kennzeichen Warten und Abbruch dienen der vorläufigen bzw. endgültigen Aussetzung der Datenübertragung. Warten zeigt an, dass der Empfänger vorläufig keine weiteren Daten aufnehmen kann; ein ACK von diesem ausgehend setzt dann die Übertragung fort. Die setzbaren Timecode-Angaben ermöglichen eine spätere Synchronisation.
System Exclusive/Realtime. Informationen über Timecode und andere Spezialfunktionen lassen sich auch als Echtzeitdaten übertragen. Tabelle 4.12 zeigt einen kurzen Überblick hierzu [23, 24].
4.2.5 System Common
Sollen alle sich im System befindlichen MIDI-Geräte eine Anweisung erhalten, so darf diese weder gesäte-, noch kanalbezogen sein. Es handelt sich um Informationen über Synchronisation, Liedauswahl und Stimmung. Tabelle 4.13 listet alle System Common Messages auf.
Die ersten beiden Status-Bytes dienen der Synchronisation von Sequenzern oder auch Rhythmusgeräten. Eine Liedauswahl ist ebenfalls bei manchen
nicht verwendet
nn MIDI-Timecode
nn MIDI Show Control
nn Informationen über Notation
nn Gerätesteuerung
nn MIDI-Timecode-Cueing
nn Befehle für MIDI-Maschinensteuerung
nn Rückmeldungen der MIDI-Maschinensteuerung
nn MIDI-Tuning-Standard
Tabelle 4.13 System-Common-Messages
1 ..-_,-Byte (Hex) Daten-Byte (binär) Bedeutung
Oqqqvvvv MIDI-Timecode Viertelbild (q = Datenart, v = Wert)
Obbbbbbb Lied-Positionszeiger (LSB)
Obbbbbbb Lied-Positionszeiger (MSB)
Ozzzzzzz Liedauswahl (z = Liednummer)
undefiniert
undefiniert
Stimmen
Ende von System Exclusive
MIDI-Instrumenten oder -Geräten möglich; diese ermöglichen meist per Tastenfeld eine Selektion, und über die MIDI-Schnittstelle kann auch ferngesteuert eine Liedauswahl erfolgen. Da dieselbe Nachricht zu allen Geräten des Netzes gelangt. muss jede Liednummer unter den Geräten auch tatsächlich einheitlichen Stücken zugeordnet sein, sonst ist eine simultane Liedauswahl auf allen Geräten wenig sinnvoll.
Das Stimmen ist nicht bei allen Geräten möglich und auch nicht bei allen nötig (digital arbeitende Geräte beziehen sich i. Allg. auf eine interne Quarzreferenz, die nur unmerklich von Nennfrequenzen abweicht). Auch das Endekennzeichen von System Exclusive zählt zu den System-Common-Messages, obwohl letztere kein solches Endekennzeichen benötigen.
4.2.6 System Realtime
Diese Messages sind ebenfalls nicht kanalbezogen und besorgen ein Aufrechterhalten der Synchronisation. Die Taktsignale werden hierbei 24 mal pro Viertelnote gesendet. System-Realtime-Informationen haben Vorrang vor allen anderen Daten. welche notfalls zurückgestellt werden müssen. Tabelle 4.14 zeigt die möglichen Anweisungen.
Nicht alle MIDI-Geräte reagieren auf die oben genannten Realtime-Messages. In diesem Falle werden die entsprechenden Informationen ignoriert.
4.3 General MIDI
Neben dem üblichen MIDI-Standard bietet General MIDI einige ergänzende Festlegungen, die Kompatibilitätskriterien besser erfüllen sollen. Das Haupthandikap bestand bei den Synthesizern darin, dass Programm-Nummern nicht einheitlich mit einem Klang eines virtuellen Instruments korrespondieren. Synthesizer A führt z. B.
die Streicher auf Programm-Nummer n, während Synthesizer B die Streicher auf Nummer in platziert hat [25].
Tabelle 4.14 System-Realtime-Messages (Status-Bytes)
Byte (Hex) Bezeichnung Beschreibung
F8 Timing Clock Regelmäßiges Taktsignal 24 mal pro Viertelnote
F9 undefiniert
FA Start Startinitial für einen Sequenzer oder Rhythmusgerät
am Anfangspunkt eines Lieds
FB Continue dto., jedoch am letzten Haltepunkt
FC Stopp Stoppinitial (mit Verbleiben des Liedpositionszei-
gers)
FD undefiniert
FE Active Sensing Erkennung, dass trotz längerer Pause (>300 ms) der
Datentransfer ordnungsgemäß arbeitet
FF System Reset Rücksetzen aller Geräte in Ausgangsstatus (wie nach
dem Einschalten)
146 4 MIDI
Eine solche Festlegung garantiert natürlich nicht, dass eine MIDI-Datei, die verschiedene Systeme steuern soll, auch tatsächlicher immer identisch klingt. Die Klangerzeugung ist nach wie vor individuell in Bezug auf das Funktionsprinzip und somit auch in Bezug auf das Klangergebnis. Feste Verknüpfungen zwischen Programm-Nummern und virtuellen Instrumenten ermöglichen lediglich, dass die einzelnen Instrumente korrekt identifiziert werden können.
4.3.2 Festlegungen für Schlaginstrumente
Schlaginstrumente können als einziges virtuelles Instrument betrachtet werden: Schwierigkeiten hei der Notation begegnet man damit, dass mit den einzelnen Komponenten bestimmte Tonhöhen der Noten (= Key) korrespondieren. Beim Komponieren oder Spielen sind daher die einzelnen Trommeln usw. immer an den gleichen Stellen der Notation bzw. des Keyboards zu finden. Tabelle 4.16 zeigt diese Notenzuordnungen.
Notennummern erstrecken sich allgemein von 0-127, wobei das mittlere C (C4) die Nummer 60 erhält und hier dem hohen Bongo entspricht (siehe auch Tab. 4.2). Alle Notennummern außerhalb der oben genannten Reihe sind reserviert für weitere Festlegungen.
Noten-Nr.
Schlaginstrument
Noten-Nr.
Schlaginstrument
35
Basstrommel (akustisch)
59
Ride-Becken 2
36
Basstrommel 1
60
Bongo (hoch)
37
Side Stick
61
Bongo (tief)
38
Snare-Trommel (akustisch)
62
Konga (hoch, gedämpft)
39
Händeklatschen
63
Konga (hoch, offen)
40
Snare-Trommel (elektrisch)
64
Konga (tief)
41
Stand-Tom-Tom (tief)
65
Timbale (hoch)
42
Hi-Hat (geschlossen)
66
Timbale (tief)
43
Stand-Tom-Toni (hoch)
67
Agogo (hoch)
44
Pedal-Hi-Hat
68
Agogo (tief)
45
Hänge-Tom-Tom (tief)
69
Cabasa
46
Hi-Hat (offen)
70
Maracas
47
Tom-Tom (tief-mittel)
71
Pfiff (kurz)
48
Tom-Tom (mittel-hoch)
72
Pfiff (lang)
49
Crash-Becken 1
73
Guiro (kurz)
50
Hänge-Toni-Tom (hoch)
74
Guiro (lang)
51
Ride-Becken 1
75
Claves
52
China-Becken
76
Klangholz (hoch)
53
Ride-Glocke
77
Klangholz (tief)
54
Tambourin
78
Cuica (gedämpft)
55
Splash-Becken
79
Cuica (offen)
56
Kuhglocke
80
Triangel (gedämpft)
57
Crash-Becken 2
81
Triangel (offen)
58
Vibraslap
Diese Key-Map kann jedoch z. B. innerhalb des Windows-Betriebssystems durch eine eigene Map modifiziert werden, wie wir weiter unten sehen werden.
4.3.3 Weitere Festlegungen
General-MIDI-Geräte sollen bestimmte Leistungsmerkmale erfüllen in Bezug auf Stimmen-, Instrumentenanzahl usw.
Stimmenanzahl. Für melodische und rhythmische Klänge sollen mindestens 24 unabhängige Stimmen simultan verfügbar sein. Mindestens aber müssen 16 hiervon für Melodie-Instrumente und 8 für Schlaginstrumente zuteilbar sein.
Das bedeutet konkret, dass bei einer zeitlichen Überlappung von 16 aufgerufenen Noten alle wiedergegeben werden müssen. Ferner gilt dies auch für 8 weitere Noten im Perkus-sionskanal.
Kanäle. Es werden 16 MIDI-Kanäle unterstützt, wobei jeder Kanal mehrere Stimmen polyphon (zeitlich unabhängig bei verschiedenen Notennummern) ansteuern kann. Jedem Kanal können unterschiedliche Instrumente zugeteilt werden, wobei 3edoch Kanal 10 immer für Perkussionsinstrumente vorbehalten ist.
Somit beherrschen General-MIDI-Geräte einen erweiterten Poly-Modus, den sog. Multimode. Dieser setzt voraus, dass das Gerät mehrere Instrumentenklänge (Timbres) gleichzeitig erklingen lassen kann. Die Instrumente sind beliebig auf die 16 MIDI-Kanäle verteilt; lediglich die Perkussionsklänge sind auf Kanal 10 fixiert. Das Key-Mapping erfolgt nach Tabelle 4.16.
Instrumente. 128 Programm-Nummern spezifizieren die verfügbaren Instru--kntenklänge nach Tab. 4.15. Dabei sind mindestens 16 unterschiedliche Instru--kmtenklänge (Timbres) gleichzeitig spielbar.
eenstige Ausstattung. Ein General-MIDI-Gerät verfügt über einen Regler für die 7.e'›amtlautstärke (Master Volume). Anschlüsse: Audio- und Kopfhörerausgang so-MIDI-In-Anschluss (andere Anschlüsse optional).
Simbole. Zur Kennzeichnung erhalten Systeme ein Symbol, welches die Einhal-L-1- z der oben genannten Spezifikationen gewährleistet. Es ist als Aufkleber am -.Dr-Gerät bzw. -Instrument zu finden.
her genannten Spezifikationen und Richtlinien genügen dem sog. Level 1; mak 'i6-2iterentwicklung dieses Standards wird für die Zukunft erwartet. Dabei kann
4 MID
jedoch davon ausgegangen werden, dass die bisherigen Richtlinien nicht ungülti werden, sondern lediglich eine Ergänzung erfahren.
4.3.5 Das GS-Format
Zur Erweiterung des GM-Standards hat die Fa. Roland ein Format geschaffen, da, den Klangeigenschaften von MIDI-Geräten einen größeren Raum bietet. Dadurcl soll auch erreicht werden, dass Programm-Nummern nicht nur formal mit defi nierten virtuellen Instrumenten korrespondieren, sondern dass auch der Klang diese Instrumente standardisiert bzw. vereinheitlicht werden. Die Abwärtskompatibilitä zum GM-Standard soll dabei uneingeschränkt gewährleistet sein. Als Erweiterung lassen sich einige Festlegungen nennen, die im Folgenden erwähnt sind.
Polyphonie und multitimbrale Eigenschaften. Beim GS-Format ist eine Min destanzahl von 24 polyphonen Stimmen vorgeschrieben, d. h. auf einem MIDI Kanal können mindestens 24 unterschiedliche Töne eines virtuellen Instrument simultan erklingen. Außerdem sind für den Multimode 16 virtuelle Instrument( vorgesehen, d. h. alle 16 MIDI-Kanäle sind beim Ausschöpfen dieser Betriebsar durch die virtuellen Instrumente belegt. Es erfolgt eine dynamische Zuordnung de Stimmen in den Kanälen, was bei einer Überlastung eines Kanals zu einem Auswei chen auf einen anderen Kanal bedeutet. Der Kanal für die Schlaginstrumente erfähr dabei eine bevorzugte Behandlung.
Klangbeeinflussung über Steuerungsänderungen. Das GS-Datenformat sieh spezielle Möglichkeiten zur Veränderung des Klanges eines virtuellen Instrument vor. Nach dem einleitenden Präfix Bn für die Steuerungsänderung (siehe Tab. 4.1 folgt die Steuerungsart (siehe Tab. 4.2 und 4.3), nämlich die unregistrierten Parame ter 62H (LSB) bzw. 63H (MSB).
Bank- und Programmwechsel. Der Klang einer Stimme wird definiert über zwe Vorgaben, nämlich über die Bank oder des Programms. Während letzteres die Aus wahl des virtuellen Instruments trifft, beinhalten unterschiedliche Banks Variationei der Klangdetails. Dabei ist für Bank 1 (uu = 0) die Ordnung der Programme nacl den Festlegungen der Gremien vorgeschrieben.
Die Datenfolgen sind im einzelnen:
Variation der Bank-Nummer: Bn 00 uu bzw. Bn 20 uu
Variation der Programm-Nummer: Cn ui)
n MIDI-Kanal (0—F), tat Bank-Nummer (00-3F), uu Programm-Nummer (00-7F).
Während ja auch nach GM 128 Programme (00-7F) vorhanden sind, hat man le diglich 64 Banks vorgesehen. Somit stehen theoretisch immerhin 8192 unterschied liehe Klangfarben zur Verfügung, wenn man die Zusammenfassung in virtuelle Instrumente nicht vornehmen will. In Wirklichkeit sind jedoch meist bei weiten nicht alle der 64 möglichen Banks realisiert.
Dienstag, 21. November 2017
Abonnieren
Kommentare zum Post (Atom)
Keine Kommentare:
Kommentar veröffentlichen
Hinweis: Nur ein Mitglied dieses Blogs kann Kommentare posten.