Einführung in MIDI

Anfänger trifft Fortgeschrittene; hier kann man nur ganz einfache Einsteigerfragen stellen

Moderator: herw

Antworten
Benutzeravatar
huada
user
Beiträge: 16
Registriert: 28. März 2007, 23:59
Kontaktdaten:

Einführung in MIDI

Beitrag von huada »

Um mit Reaktor arbeiten zu können sollte man etwas Ahnung von MIDI haben, deswegen hier eine kleine Einführung in MIDI.

Inhalt:
MIDI SOFTWARE
CHANNEL VOICE MESSAGES
CHANNEL MODE MESSAGES
SYSTEM COMMON MESSAGES
SYSTEM REAL TIME MESSAGES
SYSTEM EXCLUSIVE MESSAGES
STANDARD MIDI FILES
Benutzeravatar
huada
user
Beiträge: 16
Registriert: 28. März 2007, 23:59
Kontaktdaten:

Beitrag von huada »

MIDI Software

Das MIDI-Protokoll arbeitet mit dem binären Zahlensystem das auch in der Informatik Anwendung findet.

Binäres Zahlensystem heißt es werden nur 2 Zahlen verwendet, nämlich 0 und 1.

Diese beiden Zahlen bilden binäre Codes, die die Gäste dann als bestimmte Nachrichten identifizieren wobei an jeder stelle eine 0 oder eine 1 stehen kann.

Eine Stelle nennt sich Bit (Binary Digit)

8 Bit ergeben ein Byte (1 Byte = Datenwort)

Wie kommt man von den Bits auf die Werte?

Jedes Bit könnte also eine 0 oder eine1 sein, d.h. 2 Zustände (EIN und AUS) daraus entsteht die Formel 2 Hoch n.

Beispiel:
4 Bit = 2*2*2*2 Bit = 16 Werte
7 Bit = 128 Werte
8 Bit = 256 Werte

Das erste Byte nennt sich Statusbyte.

Das Statusbyte hat als erstes Bit immer die 1

Im Statusbyte steht die Befehlsart (Note On, Note Off,...) und bei manchen Befahlen der MIDI-Kanal.

Nach dem Statusbyte kommt das 1 Datenbyte danach das 2 Datenbyte. Die erste Zahl ist immer die 0. Die anderen 7 Bit sind für die Wertedarstellung zuständig.
Benutzeravatar
huada
user
Beiträge: 16
Registriert: 28. März 2007, 23:59
Kontaktdaten:

Beitrag von huada »

Channel Voice Messages

1) Note On

Der Befehl entspricht dem Anschlagen einer Taste oder eines Triggerpads.
Das eingestrichene C hat immer den Wert 60.
Nichtdynamische Keyboards überrtagen immer den Wert 64.

2) Note Off

Der Note Off Befehl wird beim Loslassen der Taste oder des Triggerpads erzeugt.

3) Channel Aftertouch

Wird auch Channel Pressure odermonophoner AT genannt.
Ist nur für Keyboards und Klangerzeuger interessant.
Mit dem Channel AT lassen Klangparameter wie Lautstärke Steuern.
Channel AT misst nur einen Wert für die gesamte Tastatur. (nur ein Drucksensor)

Dieser befehl kann auf 2 Arten erzeugt werden:

1.Durch Nachdrücken der Tasten nach dem Anschlag.
2.Durch Automation im Sequencer.

4) Key Aftertouch

Wird auch Key Pressure oder Polyphoner AT genannt.
Datenintensiver.
Key AT misst pro Taste einen eigenen Wert. (pro Taste ein Drucksensor) -> 2 Datenbytes

5) Programm Change

MIDI-Befehl zur Übertragung und Fernsteuerung von Programm Umschaltungen (Presets, Performances, Sounds .....).

6) Pitch Bend

Pitchbending ist eine stufenlose Veränderung der Tonhöhe und kann mittels Handrad oder Sequencerautomation benutzt werden.

MSB = MOST SIGNIFICANT BYTE
LSB = LEAST SIGNIFICANT BYTE
Semitone = Halbtone Schritt
100 Cent = 1 Semitone

MSB -> 1DB -> Semitones -> 7Bit
LSB -> 2DB -> Cents -> 7Bit
MSB + LSB = 14 Bi

7) Control Change

Midi-Befehl zur Übertragung von Spielhilfen und Steuerelementen. (Handräder, Potis, Fader, ....)

Alle Controller sind in einer Liste (Control Change Liste) zusammengefasst und haben eine eigene Nummer.

Diese Nummern werden von den Herstellern bis auf wenige Ausnahmen ignoriert die dann die Parameter ihres Gerätes in diese Liste eingetragen.

Ab Ctrl. Change 121 findet man die Channel Mode Messages.
Statusbyte -> 1011 -> 2 Datenbytes

Es gibt 2 Arten von Controller:
Nr. 0-63 Regler (Continuous Control)
Nr. 64-127 Schalter (Switches)
Benutzeravatar
huada
user
Beiträge: 16
Registriert: 28. März 2007, 23:59
Kontaktdaten:

Beitrag von huada »

Channel Mode Messages


1) Reset all Controllers

Control Change Nummer 121

Bei diesem Befehl werden Control Change, Pitch Bend, Aftertouch und Pedaleinstellungen
in eine sinnvolle Ausgangsposition gebracht.

Zu versenden vom Sequencer oder Keyboard aus.

2) Local Control

Central Change Nummer 122

Mit Local Control kann man die Klangerzeugung eines Synthesizer ausschalten. (Local On/Off)

Der Synthesizer dient nur als Masterkeyboard. Tastatur, Handräder, Potis, etc. sind weiterhin aktiv.

Befehl nur per Keyboard oder Sequencer zu versenden.

3) All Notes Off

Control Change Nummer 123

Dieser Befehl gilt als Panikfunktion und schaltet sämtliche noch klingende Noten ab.

4)

MODE1: OMNI ON POLY alle Kanäle gleichzeitig (mehrstimmig)
MODE2: OMNI ON MONO alle Kanäle gleichzeitig (einstimmig)
MODE3: OMNI OFF POLY nur 1 Kanal aber zum Auswählen (mehrstimmig)
MODE4: OMNI OFF MONO nur 1 Kanal (einstimmig)

MODE3b: MULTIMODE
Ein Klangerzeuger im Multimode ist in der Lage, Daten auf mehreren Kanälen unabhängig voneinander zu verarbeiten.
Benutzeravatar
KlangRaum
synth guru
Beiträge: 647
Registriert: 1. August 2006, 12:55

Beitrag von KlangRaum »

kleiner einwurf: sowas gibts doch schon haufenweise im netz...
zb http://www.midi.org/ / http://de.wikipedia.org/wiki/Musical_In ... _Interface /
http://home.snafu.de/sicpaul/midi/midi0a.htm
und viele mehr....

eine linkliste zum thema midi und btw usb-midi / midi via lan / osc wäre sinnvoller
Siggi Natur ? :mrgreen:
Benutzeravatar
huada
user
Beiträge: 16
Registriert: 28. März 2007, 23:59
Kontaktdaten:

Beitrag von huada »

KlangRaum hat geschrieben:kleiner einwurf: sowas gibts doch schon haufenweise im netz...
zb http://www.midi.org/ / http://de.wikipedia.org/wiki/Musical_In ... _Interface /
http://home.snafu.de/sicpaul/midi/midi0a.htm
und viele mehr....

eine linkliste zum thema midi und btw usb-midi / midi via lan / osc wäre sinnvoller
Alles gibts im internet man braucht nur suchen. War eigentlich nur als hilfe gedacht für anfänger die in dieses forum kommen und keine ahnung haben. (damit man ned auf andere seiten linken muss) Aber wenn es nicht erwünscht ist lass ich es halt.

PS: Bis jetzt wirkt das ganze etwas arrogant auf mich! Habt ir angst das ihr was lernen könnt oder ein anderer mehr weis??

Vielleicht hab ichs ja auch nur falsch verstanden.

MFG
Huada
Benutzeravatar
KlangRaum
synth guru
Beiträge: 647
Registriert: 1. August 2006, 12:55

Beitrag von KlangRaum »

huada hat geschrieben: Vielleicht hab ichs ja auch nur falsch verstanden.
ja... sorry für meinen kommentar. :roll:
ich wollte weder an dir noch am inhalt deiner postings kritisieren. allerdings sollten sich beiträge zu einer knowledge-base an bereits bestehenden infos im web orientieren und nicht das rad zum xten mal neu erfinden, ohne es rund zu feilen.
Im Statusbyte steht die Befehlsart (Note On, Note Off,...) und bei manchen Befahlen der MIDI-Kanal.
wichtige info zum midi-befehlssatz wäre zb etwas über die zusammensetzung des befehlsbyte zu sagen - und dabei zb ein byte in hex oder bin darzustellen


siehe hier: http://www.midi.org/about-midi/table1.shtml

Code: Alles auswählen

-------------------------------------------------------------------------
Channel Voice Messages [nnnn = 0-15 (MIDI Channel Number 1-16)]
-------------------------------------------------------------------------
1000nnnn     0kkkkkkk         Note Off event.
             0vvvvvvv         This message is sent when a
                              note is released (ended).
                              (kkkkkkk) is the key (note) number.
                              (vvvvvvv) is the velocity.

1001nnnn     0kkkkkkk         Note On event.
             0vvvvvvv         This message is sent when a
                              note is depressed (start).
                              (kkkkkkk) is the key (note) number.
                              (vvvvvvv) is the velocity.



....etcetcetc

erst bei dieser darstellung wird plötzlich transparent, wie der befehlssatz aufgebaut ist. oder zb der running-mode - bei dem das befehlsbyte zb bei mehreren tastendrücken nur einmal am anfang gesendet wird, bis erneut ein befehlsbyte >$7f gesendet wird:

Code: Alles auswählen

1001nnnn  0kkkkkkk-0vvvvvvv  0kkkkkkk-0vvvvvvv 0kkkkkkk-0vvvvvvv ....

dadurch reduziert sich der datenstrom um ein drittel - was besonders bei der niedrigen datenrate von 3125 bytes/sec sehr sinnvoll ist...


aber wiegesagt: solche scripte gibts bis zum abwinken im netz - in deutsch wie in englisch...
Es gibt 2 Arten von Controller:
Nr. 0-63 Regler (Continuous Control)
Nr. 64-127 Schalter (Switches)
das stimmt so nicht. zb die RPN oder NRPN - die ja controllernummern > 64 haben lassen sich nicht als switch bezeichnen - sondern sind kaskadierte erweiterungen....
schau mal hier: http://www.midi.org/about-midi/table3.shtml

ps
nimms bitte nicht persönlich....
Zuletzt geändert von KlangRaum am 30. März 2007, 16:33, insgesamt 1-mal geändert.
Siggi Natur ? :mrgreen:
Benutzeravatar
huada
user
Beiträge: 16
Registriert: 28. März 2007, 23:59
Kontaktdaten:

Beitrag von huada »

meiner meinung nach kannst du es so wem erklären der schon mal was von midi gehört hatt. Aber wenn du das so einen erklärst der keine ahnung hatt davon, der wirds ned verstehn und wird auch nie wieder was mit MIDI zu tun haben wolln. Doch wenn du anfangst es leicht zu erklären ohne zu sehr ins detail zu gehn wird er sich dafür interressieren oder auch ned. Wen er sich dafür interressiert kann man dann noch immer ins detail gehn. zb. midi für fortgeschrittene oder sowas.

MFG
Huada
Benutzeravatar
KlangRaum
synth guru
Beiträge: 647
Registriert: 1. August 2006, 12:55

Beitrag von KlangRaum »

das hat nix mit midi für fortgeschrittene zu tun, wenn man derart strukturiert vorgeht...

nimm die wiki: http://de.wikipedia.org/wiki/Musical_In ... _Interface
damit hast du alle anfängerrelevanten dinge bereits erschlagen....
imho kann ein reaktor-forum ja durchaus darauf verlinken, anstatt sich da nochmal explizit durchzuquälen
Siggi Natur ? :mrgreen:
Benutzeravatar
huada
user
Beiträge: 16
Registriert: 28. März 2007, 23:59
Kontaktdaten:

Beitrag von huada »

Jo passt scho. Hatt sich erledigt.
helmsklamm
synth gott
Beiträge: 1011
Registriert: 10. Mai 2006, 16:21
Wohnort: 030

Beitrag von helmsklamm »

also ich finds nett sowas an "zentraler" stelle zu haben. danke.
allerdings iss das sehr allgemein, ich vermiss n bissl die verlinkung mit reaktor. - was muss in reaktor wie und wo gestzt werden, damit überhaupt was ankommt und solche sachen.

da kann man als anfänger schon drüber stolpern.
bitte vor jeder frage erstmal überprüfen, ob das kapitel "mein erster synth" S. 76 im hnadbuch, schon gelesen wurde.
Antworten