Xycl-Logo

Bitte geben Sie einen Suchbegriff ein, um die Suche zu starten.

Artikel nur in Deutsch vorhanden 
Xycl » Technik-Tipps » MIDI Grundlagen » Channel Voice Messages

MIDI Channel Voice Messages

Channel Voice Messages dienen dazu die Musik-Wiedergabe zu steuern. Hierzu gehören z.B Note On, Note Off, Program Change oder Controller Change.

Note On / Note Off / Velocity

Für das Senden einer Ton-Information werden im MIDI-Protokoll zwei Nachrichten benutzt. Beim Drücken einer Taste auf einem MIDI fähigen Keyboard wird die MIDI Channel Voice Message Note On gesendet und beim Loslassen die MIDI Channel Voice Message Note Off. Auf welchem der 16 MIDI Channels diese Message gesendet wird, können wir am Keyboard einstellen.

Der MIDI Channel Voice Message Note On folgen zwei Daten-Bytes, die die Tasten-Nummer (der Ton) und die Velocity (Anschlagsdruck bzw. Geschwindigkeit) enthalten. Note Off folgen auch zwei Daten-Bytes, die ebenfalls Tasten-Nummer und Velocity enthalten. Die Velocity beim Note Off wird allerdings in so gut wie allen Keyboards ignoriert.

Aftertouch / Polyphonic Aftertouch / Channel Aftertouch

Einige Keyboards können, wenn wir eine Taste drücken und halten, zusätzlich den Druck auswerten, der währenddessen ausgeübt wird. Dieses Aftertouch kann dann z.B. diverse Effekte wie Modulation steuern. Hier gibt es nun zwei Möglichkeiten. Entweder kann das Keyboard für jede einzelne Taste eine Aftertouch Message erzeugen. Dann sprechen wir von Polyphonic Aftertouch. Falls das Keyboard - was zumeist üblich ist - jedoch nur eine einzige Aftertouch Message für die komplette Tastatur erzeugen kann, dann handelt es sich um den Channel Aftertouch.

Polyphonic Aftertouch Messages enthalten zwei Daten-Bytes, die die Tastatur-Nummer und den Druck enthalten.

Channel Aftertouch Messages benötigen nur ein Daten-Byte mit der Druck-Information.

Pitch Bend

Die MIDI Pitch Bend Message überträgt Bewegungen des Pitch Bend Wheels eines Keyboards. Damit die Tonhöhenänderung möglichst stufenlos erfolgt, besitzt die Message zwei Daten Bytes, die beide zusammen die resultierende Tonhöhenänderung ergeben.

Program Change

Die MIDI Program Change Message dient dazu bei einem Keyboard das eingestellte Instrument und damit den Sound bzw. bei einem Effektgerät das hinterlegte Programm zu wechseln. Diese Nachricht besitzt nur ein Daten Byte, das die neue Programm-Nummer enthält. Das Status Byte enthält wie bei allen wie alle MIDI Channel Voice Messages die Kanal Information.

Bank Select

Mithilfe der Controller 0 und Controller 32 können wir die sogenannte Bank auswählen. Die Bank Select Message dient dazu die möglichen anwählbaren Programme durch die MIDI Program Change Message zu erhöhen. Da jede MIDI Message nur einen Wertebereich von 0 bis 127 übertragen kann und wir somit per MIDI Program Change Message nur 128 verschiedene Programme (beim Keyboard also Sounds) anwählen können, hat man den Bank Select erfunden. In jeder Bank können wir 128 verschiedene Programme auswählen. Und mithilfe der beiden Controller 128 x 128 also 16384 Bänke. Dies sollte auch für das größte Effektgerät oder Synthesizer ausreichen.

Controller 0 enthält das sogenannte MSB (most significant byte) und Controller 32 das LSB (least significant byte). Auf deutsch heißt dies, dass Controller 0 den groben Wertebereich abdeckt und Controller 32 für das Feineinstellen zuständig ist. Effektgeräte bzw. Synthesizer, die weniger als 128 Bänke enthalten, ignorieren daher den Controller 32, da mit dem MSB Controller 0 ein ausreichend großer Wertebereich z.V. steht.

Die Reihenfolge, in der MIDI Program Change und MIDI Bank Select erfolgen müssen, ist fest definiert. Zunächst wird ggf. per MIDI Bank Select eine andere Bank ausgewählt ohne das dies direkte Auswirkungen auf den Sound des Keyboards bzw. das Programm des Effektgerätes hat. Erst wenn dann ein MIDI Program Change folgt, wird auf das angegebene Program in der zuvor gewählten Bank umgeschaltet.

Control Change

MIDI Control Change Messages werden benutzt, um diverse Parameter an MIDI fähigen Keyboards oder Effektgeräten zu steuern. MIDI Control Change Messages wirken wie alle anderen MIDI Channel Voice Messages nur auf den Kanal, der in ihrem Status Byte mitgesendet wird. Dem Status Byte folgen zwei Daten Bytes mit der Controller Nummer und dem Controller Wert. Die Controller Nummer ist gößtenteils standardisiert und wird von mir in einem folgenden Artikel näher erläutert.

RPN / NRPN

So wie der MIDI Bank Select die auswählbaren Programme erweitert, haben wir mit RPN (Registered Parameter Number) und NRPN (Non-Registered Parameter Number) die Möglichkeit den MIDI Controller Change zu erweitern.
In Verbindung mit Controller 96 (Data Increment), 97 (Data Decrement), 98 (Registered Parameter Number LSB), 99 (Registered Parameter Number MSB), 100 (Non-Registered Parameter Number LSB) und 101 (Non-Registered Parameter Number MSB) erweitert Controller 6 (Data Entry) die Anzahl der per MIDI verfügbaren Controller.

Zunächst wird per Controller 98 und 99 der RPN bzw. mit Controller 100 und 101 der NRPN Controller ausgwählt und dann per Controller 6, 96 oder 97 der Wert geändert.

 

Zusammenfassung

Status Byte
D7----D0

Channel Voice Messages [cccc = 0-15 (MIDI Kanal 1-16)]

Daten Bytes
D7----D0
Beschreibung
1000ccccc 0nnnnnnn
0vvvvvvv

Note Off.

Wird gesendet, wenn die Taste losgelassen wird. (nnnnnnn) ist die Notennummer. (vvvvvvv) ist der Anschlag (velocity.)

1001cccc 0nnnnnnn
0vvvvvvv

Note On.

Wird gesendet, wenn die Taste gedrückt wird. (nnnnnnn) ist die Notennummer. (vvvvvvv) ist der Anschlag (velocity.)

1010cccc 0nnnnnnn
0ddddddd

Polyphonic Key Pressure (Aftertouch).

(nnnnnnn) ist die Notennummer (note) number. (ddddddd) ist der Druck, mit dem nach dem Anschlag ein weiteres Mal die Taste(n) heruntergedrückt wird.

1011cccc 0ccccccc
0wwwwwww

Control Change.

(ccccccc) ist die Controller-Nummer (0-119). (wwwwwww) ist der Controller-Wert(0-127).

1100cccc 0ppppppp

Program Change.

(ppppppp) ist die neue Programm-Nummer.

1101cccc 0wwwwwww

Channel Pressure (After-touch).

(wwwwwww) ist der Wert des Anschlages.

1110cccc 0lllllll
0mmmmmmm

Pitch Bend.

Pitch Bend wird mit 14 Bits übertragen. (lllllll) sind die least significant 7 Bits und (mmmmmmm) die most significant 7 Bits

Die Mitte (also keine Pitch Bend) liegt bei 2000H oder in Bits m= 1000000 und l = 0000000

 


Themenverwandte Artikel:



Toni
Comment
MIDI für Dummys
Reply #1 on : Fri August 14, 2009, 12:01:20
Hi,

endlich mal ohne Tabellen eine Erklärung der Midi-kommandos, die man auch versteht.

Kommentar schreiben

  • Benötigte Felder sind mit * markiert.
  • BBCODE Style für URLs. [URL=example.com]Linktext[/URL] ohne HTTP:// !!!

If you have trouble reading the code, click on the code itself to generate a new random code.
Security Code:
 

Valid XHTML 1.0 Transitional   Valid CSS!

Interessante Seiten - Sitemap - Datenschutz - Impressum

Seite erzeugt in 0.2650 s. Zuletzt geändert am 2010-04-12