© H.-D. Wuttke 2012
Zusammenfassung Medientyp Audio
2.1. Physikalische GrundlagenHörbereich: 20Hz bis 20kHz, 0 bis 130dBSensitivität: frequenzabhängig, Maskierung
2.2. Digitalisierung/ SamplingZeit-/ Frequenzbereich: DiskretisierungSample-Rate, Nyquist: fmax= 2fs, CD: 44kHz Aliasing: kont. Zeit => diskrete Zeit: Tiefpassfilter
© H.-D. Wuttke 2012
MIDI (Musical Instrument Digital Interface)
Metasprachezur Beschreibung von Musik analog der Notenschriftzur Steuerung elektronischer Musikinstrumente
ProtokollKommunikation zwischen elektronischen Musikinstrumenten und mit Rechnern
© H.-D. Wuttke 2012
MIDI - Grundlagen
Geschichte
Physikalische Schnittstelle
Übertragung der Metadaten (Protokoll)
Elemente der Metasprache Komponenten, Begriffe, Kommandos
Zeitkodierung
Dateiaufbau
© H.-D. Wuttke 2012
MIDI-Geräte (Geschichte)
Musikautomaten (Patent Fa. Welte 1905: erstmals Anschlagaufzeichnung)
Elektronische MusikinstrumenteMoog Synthesizer, FM-Synthese (1965)Keyboards
Musik mit Rechnern (1985)Langsame Rechner (RS232) 31 250 Bit/s
CD: 1 411 200 Bit/s
Geringe Speichermöglichkeit 10 min = 200 000 ByteCD: 105 840 000 Byte
Graphische Editoren für Noten
© H.-D. Wuttke 2012
MIDI – Geschichte
1981- 83 Roland: erste Entwicklungen V1.0
1988 Standard MIDI Files (SMF)
1991 General MIDI (GM)
1994 Yamaha XG (eXtended GM)
2001 MIDI over Fire Wire 1394
© H.-D. Wuttke 2012
MIDI –Hardware
MIDI – INMIDI – OUTMIDI – THRU
MasterSlave
THRU: nur fremdeBefehle
© H.-D. Wuttke 2012
MIDI –Hardware
Serielle SchnittstellePins des Joystick
Optokoppler
UART(UniversalAsynchronousReceiverTransmitter)
© H.-D. Wuttke 2012
MIDI –Hardware
RS 232C
1:1 Verbindung
31,25 kBaud
MIDI – Hardware
© H.-D. Wuttke 2012
MIDI – Übertragung
Klänge (Sounds)werden nicht übertragen sondern im Endgerät interpretiert => synthetisiert
=> Übertragung der Metadaten überserielle Schnittstelle mit 31,25 kBaud
Seriell => Baud = Bit/s (parallel: Byte/s)31,25 kBit/s x 1024= 32 000 Bit/s
© H.-D. Wuttke 2012
MIDI - Übertragungsrate : 31,25 kBaud
RS 232C
konstante Datenrate, serielle Übertragung, asynchron
1 Startbit + 8 Datenbits + 1 Stoppbit = 10 Bit je Info-Byte
3200 Info - Bytes je Sekunde ~ 1000 Noten
1 Info – Byte in 1/3200s = 312,5s
Hörbare Verzögerung ab 5 ms ~ 16 Byte
© H.-D. Wuttke 2012
MIDI – Begriffe
Geräte Synthesizer, Sequenzer...
MusikinformationenPolyphone, Voice, Pitch...
SteuerinformationenSong position,
© H.-D. Wuttke 2012
MIDI – Begriffe (Geräte)
SynthesizerEmpfang von MIDI-Daten, Interpretation, Klanggenerator (FM, Wave)(Tonhöhe (Pitch), Anschlagdynamik (Velocity), Klangfarbe(Timbre))
SequenzerAufzeichnung und Speicherung
von MIDI-Daten in Spuren (Tracks)Wiedergabemodus (senden von MIDI-Daten)als Software: Editor für MIDI-Daten (graphisch)
© H.-D. Wuttke 2012
MIDI – Begriffe (Synthesizer)
Voiceparallel (unabhängig) synthetisierbare Stimmeneines Instrumentes (Eigenschaft des Synthesizers, Standard: General MIDI, GM)
1 Voice = 1 Note für ein Instrument, (polyphon: mehrere Stimmen je Instrument, üblich: 16, 20, 32, ...)
Timbre Klangfarbe (Klavier, Trompete, Percussion)
(Multitimbral: mehrere Instrumente je MIDI-Gerät (z.B. PC))
definiert durch Steuersignal (Patch), Patch Map
© H.-D. Wuttke 2012
MIDI – Begriffe (Synthesizer)
Hüllkurvezeitlicher Tonverlauf
Quelle: http://www.doepfer.de/a100_man/a141_anl.pdf
© H.-D. Wuttke 2012
MIDI – Begriffe (Sequencer)
TrackZusammenfassung parallel aufzeichenbarer Stimmen => Tonbandspur, ein-/ ausschaltbar, Stimmen nicht trennbar (z.B. getrennte Spuren für linke/ rechte Hand Klavier)
PolyphonieAufzeichnung mehrerer Stimmen (z.B. Akkord)in einer Spur (Track)
© H.-D. Wuttke 2012
MIDI – Begriffe (Datenorganisation)
Channellogisch zusammengehörige MIDI-Daten
(z.B. 1 Instrument, Adresse für 1 Empfänger)
16 Kanäle je Leitung (Port), in jedem Kommando kodiert
MessageKommando zur Steuerung der MIDI-Komponenten
(Channel-message, System-message)
© H.-D. Wuttke 2012
MIDI – Begriffe (Musik)
PitchNote, Tonhöhe (C2.... g8) Pitch Wheel (+/-)
C2=0,...., c1=48, (30Hex) 12 Töne je Oktave
VelocityAnschlagdynamik, bestimmt die relative Laustärke
© H.-D. Wuttke 2012
MIDI – Tonumfang C2 .... g8
© H.-D. Wuttke 2012
MIDI – Kodierung
11 Oktavenje 12 (Halb)tönec1= 4*12 = 4811 x 12 ~ 128 ;-)
=> 7 Bit 128 Noten128 Lautstärkestufen128 Stereopositionen 128 Klangfarben128 ...
z.B. 57= 39Hex = Kammerton „a“ 440,0 Hz
© H.-D. Wuttke 2012
General MIDI – (Auszug)
© H.-D. Wuttke 2012
MIDI – Messages
© H.-D. Wuttke 2012
MIDI – Messages
Status: 80Hex
Daten: < 80Hex
Byte-Sequenz: 1*Status 1...2*Daten
1 s s s c c c c 0 d d d d d d d. . .
1 * * * * * * *
0 * * * * * * *
© H.-D. Wuttke 2012
MIDI – Messages
z.B. „Note on“auf Kanal 0
Daten: Note „a“39H
Byte-Sequenz: 1*Status 1...2*Daten
1 s s s c c c c 0 d d d d d d d. . .
1 0 0 1 0 0 0 0
0 0 1 1 1 0 0 1
© H.-D. Wuttke 2012
MIDI – Messages
© H.-D. Wuttke 2012
MIDI – Timing, Clock
Zeitbasis
a) Pulses per (Quarter) Viertelnote (PPQ)Typische Werte: 24, 96, 480 PPQ
b) SMPTE ZeiteinheitenEinheiten im Bezug auf 24, 25 bzw. 30 fpsSMPTE = Society of Motion Picture and Television Engineers
© H.-D. Wuttke 2012
MIDI – PPQ
Pulses per Quarter
Auflösung des Sequenzers bestimmt Genauigkeit der Tonlänge
Pro Song wird zu Beginn die Zeitdauer der Viertelnote (Quarter) festgelegt (Tempo des Musikstücks)
z.B. Allegro: 132 Beats per Minute, Andante: 66 BPM
Synchronisation über Clock-Message F8hex des Masters (24 x pro Viertelnote)
© H.-D. Wuttke 2012
MIDI – SMPTE
Kodierung: MSB unterscheidet PPQ SMPTE
Orientierung an Bildfolge (Frame Rate) 24, 25,30
Unterteilung in hh:mm:ss:ff:sf (sf: subframes)
© H.-D. Wuttke 2012
MIDI – SMF
Standard Midi File FormatTrack Header „MThd“ (ASCII)Datenlänge 6 Bytes
(Formattyp, Trackanzahl, PPQ)Record Header „MTrk“
DatenlängeDaten......
© H.-D. Wuttke 2012
Zusammenfassung MIDI
Metasprache16 Kanäle je Leitung, General MIDIchannel messages: Note on (9x), Note off (8x)system messages: Start (FA), Stop (FC)
ProtokollRS 232 asynchron, 31,25kBaud, 10Bit je InfobyteZeitbasis: PPQ oder SMPTE
© H.-D. Wuttke 2012
VERGLEICH (Sampling MIDI)
Originalklänge MetadatenSamples KommandosInstrumente SynthesizerReproduktion Interpretation 10,5 Mio Byte/Min 20 kByte/MinSamplerate KommandofolgeNyquist, Aliasing Seriell => ParallelRauschen (SNR) Standard (GMIDI)Mischen Komponieren- Editieren