Die Worte Midi und Midi-Files sind in aller Munde. Trotzdem wissen viele nicht genau was Midi überhaupt ist, und noch weniger, wie Midi funktioniert. Wenn man im Internet versucht sich darüber zu informieren, wird einem häufig mit Fach-Chinesisch nur so um die Ohren geworfen. Mit diesem Beitrag versuche ich auf ganz einfache Weise zu erklären, was Midi ist, und wie Midi-Files funktionieren.
MIDI steht für "Musical Instrument Digital Interface". Zu deutsch etwa Digitale Schnittstelle für Musikinstrumente. Mit der Entwicklung der Computertechnologie hielt die digitale Revolution auch Einzug in die elektronischen Musikinstrumente. Schnell wurde die Notwendigkeit erkannt eine Möglichkeit zu finden, wie digitale Instrumente untereinander, und mit dem Computer kommunizieren können. 1981 wurde dafür von Dave Smith ein Protokoll (also quasi Richtlinien für den Ablauf verschiedener Prozesse) entwickelt, welches 1983 als MIDI der Welt vorgestellt wurde.
Der gigantische Vorteil, den MIDI heute noch bietet, war zu der Zeit als es entwickelt wurde eine schlichte Notwendigkeit. MIDI braucht nämlich kaum Speicherplatz. Seinerzeit war Speicher knapp und entsprechend teuer. Aber heute noch lassen sich Midi-Daten durch ihre "Schlankheit" extrem schnell digital transportieren, und sind schon bei winzigstem Speicher verwendbar. Denn Midi-Dateien beinhalten gar keine Musik ansich, sondern lediglich eine Aneinanderreihung von Anweisungen, was das Midigerät tun soll. Vergleichbar mit einer Spieluhr oder dem legendären automatischen Piano zur Wildwest-Zeit. Dort veranlassen die Zapfen auf einer Rolle die Zungen der Spieluhr bzw. die Saiten eines Pianos in einer bestimmten Zeitabfolge zu erklingen. Genauso funktioniert MIDI auch. Nur eben nicht mechanisch, sondern digital.
Nehmen wir einmal die ersten vier Takte von "Hänschen klein" und packen es, ganz grob vereinfacht in eine Midi-Datei. Der horizontale Strahl zeigt den Zeitablauf, der vertikale die Tonhöhe.
Anweisung zum Zeitpunkt 1: schalte Ton g an
Anweisung zum Zeitpunkt 2: schalte Ton g aus; schalte Ton e an
Anweisung zum Zeitpunkt 3: schalte Ton e aus; schalte Ton e an
Anweisung zum Zeitpunkt 4: -
Anweisung zum Zeitpunkt 5: schalte Ton e aus; schalte Ton f an
Anweisung zum Zeitpunkt 6: schalte Ton f aus; schalte Ton d an
Anweisung zum Zeitpunkt 7: schalte Ton d aus; schalte Ton d an
Anweisung zum Zeitpunkt 8: -
Anweisung zum Zeitpunkt 9: schalte Ton d aus; schalte Ton c an
Anweisung zum Zeitpunkt 10: schalte Ton c aus; schalte Ton d an
Anweisung zum Zeitpunkt 11: schalte Ton d aus; schalte Ton e an
Anweisung zum Zeitpunkt 12: schalte Ton e aus; schalte Ton f an
Anweisung zum Zeitpunkt 13: schalte Ton f aus; schalte Ton g an
Anweisung zum Zeitpunkt 14: schalte Ton g aus; schalte Ton g an
Anweisung zum Zeitpunkt 15: schalte Ton g aus; schalte Ton g an
Anweisung zum Zeitpunkt 16: -
fehlt noch eine Anweisung 17: schalte Ton g aus - "damit das Lied auch aufhören kann" 
Für meine Zeitschiene habe ich die Einheit 1/4 Note gewählt. Es könnte aber genauso gut 1/8, 1/16, 1/32, 1/64, 1/128 oder noch kurzer sein. Am Ergebnis würde dies nichts ändern. Es würden dann nur entprechend oft leere Anweisungen ausgegeben. Die Geschwindigkeit spielt generell keine Rolle, und kann beliebig (auch nachträglich von jedem der das Midi-File abspielen lässt) verändert werden. Denn wie bei der Spieluhr verändern sich ja die Informationen durch die Geschwindigkeit mit der ich die Rolle drehe nicht. Nur die zeitliche Abfolge derselben. Spiele ich mein Midi-File mit 60 bpm (beats per minute / Schläge pro Minute) ab, dann hat jede Viertelnote die Dauer von einer Sekunde. Spiele ich das Midi-File mit 120 bpm ab, dauert eine Viertelnote eben nur eine halbe Sekunde.
Wie gesagt - das obige Beispiel ist eine extrem grobe Vereinfachung. Neben der blosen Anweisung "Ton an" oder "Ton aus" kann MIDI noch viel mehr transportieren. So kann es z.B. mitteilen wie laut ein Ton sein soll, ob ein Ton nachklingen soll, mit welchem Instrument ein Ton gespielt werden soll, ob eine Modulation erfolgen soll usw. Insgesamt werden zu jeder Zeiteinheit acht Grundinformationen verschickt, die jeweils Werte zwischen 0 und 127 (also 128 verschiedene Einstellungen) beinhalten können. Eine der acht Grundinformationen ist so aufgebaut, dass für jeden der 128 Einstellungen wieder eine besondere Funktion angesteuert wird. Damit werden in der Regel Effekte wie Hall, Echo, Delay, Stereoinformationen usw. mitgeteilt. Weil eine Melodie noch kein Lied macht, kann MIDI all diese Informationen gleichzeitig an 16 Kanäle adressieren. Stellt man sich all die Regelmöglichkeiten als Mischpult vor, wird einem der gigantische Umfang erst bewusst. Man hätte ein 16-Kanal Mischpult mit insgesamt mehr als 2000 Reglern und Schaltern.
Da Midi-Files selbst keine Töne beinhalten, musste sicher gestellt werden, dass sich das Ergebnis auf allen Midi-Geräten gleich anhört. Dafür wurde 1991 der sogenannte General Midi (GM) Standard eingeführt. Seither wurde dieser Standard vielfach weiter entwickelt. Alle Weiterentwicklungen haben aber gemeinsam, dass sie alle auch den GM-Standard beinhalten, also abwärts kompatibel sind. Wobei dann die Features die über den Grundstandard hinaus gehen natürlich nicht zum tragen kommen. Jedes Gerät, welches den GM-Standard erfüllt, muss:
- eine 24-stimmige parallele Tonerzeugung haben
- mindestens 16 Melodie- und 8 Perkussionsstimmen haben
- alle 16 Midikanäle empfangen können
- jeder Kanal muss polyphon (also mehrstimmig) ansprechbar sein
- die Perkussionsstimmen müssen auf Kanal 10 empfangen werden
Weiterhin müssen die ersten 128 Programmplätze mit vorgegebenen Instrumenten belegt sein. Diese sind:
00 Acoustic Grand Piano
01 Bright Acoustic Piano
02 Electric Grand Piano
03 Honky-Tonk Piano
04 Electric Piano 1
05 Electric Piano 2
06 Harpsichord
07 Clavi
08 Celesta
09 Glockenspiel
10 Music Box
11 Vibraphone
12 Marimba
13 Xylophone
14 Tubular Bells
15 Dulcimer
16 Organ
17 Percussive Organ
18 Rock Organ
19 Church Organ
20 Reed Organ
21 Accordion
22 Harmonica
23 Tango Accordion
24 Acoustic Guitar (nylon)
25 Acoustic Guitar (steel)
26 Electric Guitar (jazz)
27 Electric Guitar (clean)
28 Electric Guitar (muted)
29 Overdriven Guitar
30 Distortion Guitar
31 Guitar Harmonics
|
32 Acoustic Bass
33 Electric Bass (finger)
34 Electric Bass (pick)
35 Fretless Bass
36 Slap Bass 1
37 Slap Bass 2
38 Synth Bass 1
39 Synth Bass 2
40 Violin
41 Viola
42 Cello
43 Contrabass
44 Tremolo Strings
45 Pizzicato Strings
46 Orchestral Harp
47 Timpani
48 String Ensemble 1
49 String Ensemble 2
50 Synth Strings 1
51 Synth Strings 2
52 Voice Aahs
53 Voice Oohs
54 Synth Voice
55 Orchestra Hit
56 Trumpet
57 Trombone
58 Tuba
59 Muted Trumpet
60 French Horn
61 Brass Section
62 Synth Brass 1
63 Synth Brass 2
|
64 Soprano Sax
65 Alto Sax
66 Tenor Sax
67 Baritone Sax
68 Oboe
69 English Horn
70 Bassoon
71 Clarinet
72 Piccolo
73 Flute
74 Recorder
75 Pan Flute
76 Blown Bottle
77 Shakuhachi
78 Whistle
79 Ocarina
80 Lead 1 (square)
81 Lead 2 (sawtooth)
82 Lead 3 (calliope)
83 Lead 4 (chiff)
84 Lead 5 (charang)
85 Lead 6 (voice)
86 Lead 7 (fifths)
87 Lead 8 (bass + lead)
88 Pad 1 (new age)
89 Pad 2 (warm)
90 Pad 3 (polysynth)
91 Pad 4 (choir)
92 Pad 5 (bowed)
93 Pad 6 (metallic)
94 Pad 7 (halo)
95 Pad 8 (sweep)
|
96 FX 1 (rain)
97 FX 2 (soundtrack)
98 FX 3 (crystal)
99 FX 4 (atmosphere)
100 FX 5 (brightness)
101 FX 6 (goblins)
102 FX 7 (echoes)
103 FX 8 (sci-fi)
104 Sitar
105 Banjo
106 Shamisen
107 Koto
108 Kalimba
109 Bagpipe
110 Fiddle
111 Shanai
112 Tinkle Bell
113 Agogo Bells
114 Steel Drums
115 Woodblock
116 Taiko Drum
117 Melodic Tom
118 Synth Drum
119 Reverse Cymbal
120 Guitar Fret Noise
121 Breath Noise
122 Seashore
123 Bird Tweet
124 Telephone Ring
125 Helicopter
126 Applause
127 Gunshot
|
Gibt also das Midi-File die Anweisung eine Sequenz mit Programmplatz 21 zu spielen, werden alle Noten mit dem Klang Akkordeon gespielt. Solange bis das Kommando kommt den Programmplatz zu wechseln. Schlagzeugklänge werden, wie oben schon gesagt, exklusiv auf Kanal 10 versendet. Viele haben sich vielleicht schon gewundert, warum auf einem Keyboard, wenn man einen Schlagzeugklang einstellt, auf verschiedenen Tasten verschiedene Instrumente erklingen. Genau deshalb! Jedes Schlaginstrument hat seinen Platz auf einer vorbestimmten Taste. So muss das Midi-File nur einmal einen Programmplatz für das Schlagzeug mitteilen, und sendet dann nur noch die Informationen, welche Taste gespielt werden soll. z.B. f für eine Base-Drum, d für eine Snare-Drum oder fis für eine geschlossene Hi-Hat. So ergibt eine wirre Abfolge von Tönen den tollsten Rhythmus.
MIDI hat vielfältige Anwendungsmöglichkeiten. So kann man beispielsweise mit einem einfachen Stereorecorder vielspurige Aufnahmen machen, indem man zuerst alle Spuren mit MIDI bearbeitet. Erst, wenn das komplette Musikstück fertig bearbeitet und abgemischt ist, lässt man dann alles einmal abspielen, und nimmt das Midi-Instrument, oder die Midi Instrumente auf den zwei Stereokanälen auf. Eine für Keyboarder ebenfalls tolle Anwendungsmöglichkeit ist, dass, weil MIDI so sparsam mit Daten auskommt, diese in Echtzeit verschickt werden können. Man kann also zwei oder mehr Midi-Instrumente die miteinander verbunden sind, über nur eine Tastatur bedienen. Dies macht es möglich, dass man Instrumente verwenden kann, die selbst gar keine Tasten, sondern nur eine Tonerzeugung haben - sogenannte Expander. Oder man nutzt die Sounds zweier einfachen Keyboards gleichzeitig, und erhält so Klangmöglichkeiten, welche sonst nur sehr teure einzelne Keyboards bieten könnten.
MIDI ist trotz des schon betagten Alters immer noch eine tolle Sache. An Alternativen, die dem heutigen Stand der technischen Möglichkeiten gerecht wird, wird vielerorts gearbeitet. Wie so oft aber, konnte sich bisher keine als wirklicher Standard durchsetzen. Mal sehen, was die Zukunft mit sich bringt! |