MIDI: Unterschied zwischen den Versionen
Aus File Format
(3 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 87: | Zeile 87: | ||
| Die Trackdaten. Aufeinanderfolgend jeweils eine Kombination<br /> aus folgenden, bis Dateiende (siehe Länge des Tracks)<br /> x bezeichnet den Kanal. | | Die Trackdaten. Aufeinanderfolgend jeweils eine Kombination<br /> aus folgenden, bis Dateiende (siehe Länge des Tracks)<br /> x bezeichnet den Kanal. | ||
{| class="wikitable" | {| class="wikitable" | ||
− | |+ MIDI- | + | |+ MIDI-Kommando |
!Inhalt<br />HEX | !Inhalt<br />HEX | ||
!Inhalt<br />BIN | !Inhalt<br />BIN | ||
Zeile 128: | Zeile 128: | ||
|Tonlage (2000Hz ist Standard)<br /> b = untere 7 Bits t = obere 7 Bits | |Tonlage (2000Hz ist Standard)<br /> b = untere 7 Bits t = obere 7 Bits | ||
|- | |- | ||
+ | |} | ||
+ | Bei den Metadaten (0xFFxx) ist das dritte Byte immer die Anzahl<br />der Datenbytes die folgen. | ||
+ | {| class="wikitable" | ||
+ | |+ Meta-Daten | ||
+ | !Inhalt<br />HEX | ||
+ | !Inhalt<br />BIN | ||
+ | !Länge | ||
+ | !Beschreibung | ||
+ | |- | ||
+ | |0xFF 00 02 ss ss | ||
+ | |11111111 00000000 00000010 ssssssss ssssssss | ||
+ | |5 Bytes | ||
+ | |Sequenz ss setzen | ||
+ | |- | ||
+ | |0xFF 01 nn <tt ...> | ||
+ | |11111111 00000001 nnnnnnnn <tttttttt ...> | ||
+ | |nn Bytes | ||
+ | |Text (t) mit n Bytes | ||
+ | |- | ||
+ | |0xFF 02 nn <tt ...> | ||
+ | |11111111 00000010 nnnnnnnn <tttttttt ...> | ||
+ | |n Bytes | ||
+ | |Text für Copyright (n Bytes) | ||
+ | |- | ||
+ | |0xFF 03 nn <tt ...> | ||
+ | |11111111 00000011 nnnnnnnn <tttttttt ...> | ||
+ | |n Bytes | ||
+ | |Name der Spur oder Sequenz | ||
+ | |- | ||
+ | |0xFF 04 nn <tt ...> | ||
+ | |11111111 00000100 nnnnnnnn <tttttttt ...> | ||
+ | |n Bytes | ||
+ | |Instrumentenname | ||
+ | |- | ||
+ | |0xFF 05 nn <tt ...> | ||
+ | |11111111 00000101 nnnnnnnn <tttttttt ...> | ||
+ | |n Bytes | ||
+ | |Liedtext/Lyrik | ||
+ | |- | ||
+ | |0xFF 06 nn <tt ...> | ||
+ | |11111111 00000110 nnnnnnnn <tttttttt ...> | ||
+ | |n Bytes | ||
+ | |Marker | ||
+ | |- | ||
+ | |0xFF 07 nn <tt ...> | ||
+ | |11111111 00000110 nnnnnnnn <tttttttt ...> | ||
+ | |n Bytes | ||
+ | |Hinweis | ||
+ | |- | ||
+ | |0xFF 51 03 tt tt tt | ||
+ | |11111111 01010001 00000011 tttttttt tttttttt tttttttt | ||
+ | |5 Bytes | ||
+ | |Neues Tempo in t mikrosekunden | ||
+ | |- | ||
+ | |0xFF 58 04 nn dd cc bb | ||
+ | |11111111 01011000 00000100 nnnnnnnn dddddddd cccccccc bbbbbbbb | ||
+ | |7 Bytes | ||
+ | |Notenschlüssel n/d (2=Viertel, 3=Achtel...)<br />c = Ticks/Metronomschlag, d=Anzahl 32tel Noten / Viertelnote | ||
+ | |- | ||
+ | |0xFF 59 02 ss mm | ||
+ | |11111111 01011001 00000010 Ssssssss mmmmmmmm | ||
+ | |5 Bytes | ||
+ | |Tonhöhenjustierung<br />S=1 Ton erhöhen, S=0 Ton erniedrigen s=Wert<br />m=0 (hoch), 1 (tief) | ||
+ | |- | ||
+ | |} | ||
+ | Keyboard-Steuerbefehle | ||
+ | {| class="wikitable" | ||
+ | |+ Controller-Daten | ||
+ | !Inhalt<br />HEX | ||
+ | !Inhalt<br />BIN | ||
+ | !Länge | ||
+ | !Beschreibung | ||
+ | |- | ||
+ | |0xF8 | ||
+ | |11111000 | ||
+ | |1 Byte | ||
+ | |Pause (für Synchronisierung) | ||
+ | |- | ||
+ | |0xFA | ||
+ | |11111010 | ||
+ | |1 Byte | ||
+ | |Sequenz starten | ||
+ | |- | ||
+ | |0xFB | ||
+ | |11111011 | ||
+ | |1 Byte | ||
+ | |Sequenz weiterspielen | ||
+ | |- | ||
+ | |0xFC | ||
+ | |11111100 | ||
+ | |1 Byte | ||
+ | |Sequenz stoppen | ||
+ | |- | ||
+ | |} | ||
+ | |- | ||
+ | |0xnnnn | ||
+ | |3 Bytes | ||
+ | |FF 2F 00 | ||
+ | |11111111 00101111 00000000 | ||
+ | |Ende der Spur | ||
+ | |- | ||
+ | |} | ||
+ | Für die Notennummer gilt folgende Tabelle | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |+ Noten | ||
+ | !Oktave | ||
+ | ! | ||
+ | !C | ||
+ | !C# | ||
+ | !D | ||
+ | !D# | ||
+ | !E | ||
+ | !F | ||
+ | !F# | ||
+ | !G | ||
+ | !G# | ||
+ | !A | ||
+ | !A# | ||
+ | !B | ||
+ | |- | ||
+ | |0 | ||
+ | | | ||
+ | |0 | ||
+ | |1 | ||
+ | |2 | ||
+ | |3 | ||
+ | |4 | ||
+ | |5 | ||
+ | |6 | ||
+ | |7 | ||
+ | |8 | ||
+ | |9 | ||
+ | |10 | ||
+ | |11 | ||
+ | |- | ||
+ | |1 | ||
+ | | | ||
+ | |12 | ||
+ | |13 | ||
+ | |14 | ||
+ | |15 | ||
+ | |16 | ||
+ | |17 | ||
+ | |18 | ||
+ | |19 | ||
+ | |20 | ||
+ | |21 | ||
+ | |22 | ||
+ | |23 | ||
+ | |- | ||
+ | |2 | ||
+ | | | ||
+ | |24 | ||
+ | |25 | ||
+ | |26 | ||
+ | |27 | ||
+ | |28 | ||
+ | |29 | ||
+ | |30 | ||
+ | |31 | ||
+ | |32 | ||
+ | |33 | ||
+ | |34 | ||
+ | |35 | ||
+ | |- | ||
+ | |3 | ||
+ | | | ||
+ | |36 | ||
+ | |37 | ||
+ | |38 | ||
+ | |39 | ||
+ | |40 | ||
+ | |41 | ||
+ | |42 | ||
+ | |43 | ||
+ | |44 | ||
+ | |45 | ||
+ | |46 | ||
+ | |47 | ||
+ | |- | ||
+ | |4 | ||
+ | | | ||
+ | |48 | ||
+ | |49 | ||
+ | |50 | ||
+ | |51 | ||
+ | |52 | ||
+ | |53 | ||
+ | |54 | ||
+ | |55 | ||
+ | |56 | ||
+ | |57 | ||
+ | |58 | ||
+ | |59 | ||
+ | |- | ||
+ | |5 | ||
+ | | | ||
+ | |60 | ||
+ | |61 | ||
+ | |62 | ||
+ | |63 | ||
+ | |64 | ||
+ | |65 | ||
+ | |66 | ||
+ | |67 | ||
+ | |68 | ||
+ | |69 | ||
+ | |70 | ||
+ | |71 | ||
+ | |- | ||
+ | |6 | ||
+ | | | ||
+ | |72 | ||
+ | |73 | ||
+ | |74 | ||
+ | |75 | ||
+ | |76 | ||
+ | |77 | ||
+ | |78 | ||
+ | |79 | ||
+ | |80 | ||
+ | |81 | ||
+ | |82 | ||
+ | |83 | ||
+ | |- | ||
+ | |7 | ||
+ | | | ||
+ | |84 | ||
+ | |85 | ||
+ | |86 | ||
+ | |87 | ||
+ | |88 | ||
+ | |89 | ||
+ | |90 | ||
+ | |91 | ||
+ | |92 | ||
+ | |93 | ||
+ | |94 | ||
+ | |95 | ||
+ | |- | ||
+ | |8 | ||
+ | | | ||
+ | |96 | ||
+ | |97 | ||
+ | |98 | ||
+ | |99 | ||
+ | |100 | ||
+ | |101 | ||
+ | |102 | ||
+ | |103 | ||
+ | |104 | ||
+ | |105 | ||
+ | |106 | ||
+ | |107 | ||
+ | |- | ||
+ | |9 | ||
+ | | | ||
+ | |108 | ||
+ | |109 | ||
+ | |110 | ||
+ | |111 | ||
+ | |112 | ||
+ | |113 | ||
+ | |114 | ||
+ | |115 | ||
+ | |116 | ||
+ | |117 | ||
+ | |118 | ||
+ | |119 | ||
+ | |- | ||
+ | |10 | ||
+ | | | ||
+ | |120 | ||
+ | |121 | ||
+ | |122 | ||
+ | |123 | ||
+ | |124 | ||
+ | |125 | ||
+ | |126 | ||
+ | |127 | ||
+ | | | ||
+ | | | ||
+ | | | ||
+ | | | ||
|} | |} | ||
[[Kategorie:Datei]] | [[Kategorie:Datei]] | ||
[[Kategorie:Sound]] | [[Kategorie:Sound]] |
Aktuelle Version vom 10. Februar 2015, 22:05 Uhr
Musical Instrument Digital Interface
Offset | Länge | Inhalt HEX |
Inhalt BIN |
Beschreibung | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 1 Word (4 Bytes) | 4D 54 68 64 | (unwichtig) | MThd Chunk-Kennung (MIDI Track Header) | ||||||||||||
0x0004 | 1 Word (4 Bytes) | 00 00 00 06 | (unwichtig) | Länge des MIDI-Header Chunks. Dieser ist im Normalfall immer 6 Bytes lang. Zur Länge zählen MThd und Längen-Wörter nicht. | ||||||||||||
0x0008 | 2 Bytes | <NN NN> | Das MIDI-File-Format. Es existieren 3 Formate.
| |||||||||||||
0x000A | 2 Bytes | <NN NN> | Anzahl MIDI-Spuren (Tracks) | |||||||||||||
0x000C | 2 Bytes | <NN NN> | Taktrate einer Viertelnote (Ticks pro Viertelnote) |
Es folgen daraufhin die sogenannten Tracks (Spuren). Diese sind ebenfalls Chunk-basierend:
Offset | Länge | Inhalt HEX |
Inhalt BIN |
Beschreibung | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x0000 | 4 Bytes | 4D 54 72 6B | MTrk MIDI Track Chunk | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
0x0004 | 4 Bytes | Länge des Tracks in Bytes (abzüglich der 8 Bytes für den Header und der Längeninformation) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
0x0008 | n Bytes | Die Trackdaten. Aufeinanderfolgend jeweils eine Kombination aus folgenden, bis Dateiende (siehe Länge des Tracks) x bezeichnet den Kanal.
Bei den Metadaten (0xFFxx) ist das dritte Byte immer die Anzahl
Keyboard-Steuerbefehle
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
0xnnnn | 3 Bytes | FF 2F 00 | 11111111 00101111 00000000 | Ende der Spur |
Für die Notennummer gilt folgende Tabelle
Oktave | C | C# | D | D# | E | F | F# | G | G# | A | A# | B | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | |
1 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | |
2 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | |
3 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | |
4 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | |
5 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | |
6 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | |
7 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | |
8 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | |
9 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | |
10 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 |