| [ << MIDI-Ausgabe ] | [Top][Contents][Index] | [ Musikalische Information extrahieren >> ] |
| [ < MIDI-Ausgabe ] | [ Up: MIDI-Ausgabe ] | [ Der MIDI-Block > ] |
23.1 MIDI-Dateien erstellen ¶
Um eine MIDI-Datei aus einer LilyPond-Quelldatei zu erstellen, muss
eine \midi-Umgebung zu der \score-Umgebung hinzugefügt
werden, etwa so:
\score {
...Noten...
\midi { }
}
Wenn in einer \score-Umgebung nur eine \midi-Umgebung,
aber keine \layout-Umgebung vorkommt, wird nur MIDI produziert.
Wenn auch die Notation gewünscht ist, muss zusätzlich die
\layout-Umgebung vorhanden sein:
\score {
...music...
\midi { }
\layout { }
}
Tonhöhen, Rhythmen, Überbindungen, Dynamik und Tempoänderungen werden korrekt in das MIDI-Format übersetzt. Dynamikzeichen, Crescendo und Decrescendo werden in den MIDI-Lautstärkekanal übertragen. Dynamikzeichen werden in einen bestimmten Lautstärkenwert übersetzt, Crescendo und Decrescendo erreichen einen Übergang zwischen Lautstärkewerten. Die Wirkung von Dynamikzeichen kann auch aus der MIDI-Datei entfernt werden. Siehe hierzu Der MIDI-Block.
Das Anfangstempo und spätere Tempoänderungen können mit dem
\tempo-Befehl innerhalb der Notation notiert werden. Er
bewirkt Tempoänderungen auch in der MIDI-Datei. Der Befehl setzt
gleichzeitig auch eine Tempobezeichnung in die Noten, welches aber
auch unterdrückt werden kann, siehe Metronomangabe. Eine
andere Möglichkeit, ein eigenes MIDI-Tempo anzugeben, wird weiter
unten gezeigt, siehe Der MIDI-Block.
Aufgrund einiger Einschränkungen auf Windows ist auf Windows-Systemen
die Standarddateierweiterung von MIDI-Dateien .mid. Andere
Betriebssysteme verwenden weiterhin .midi. Wenn eine
andere Endung erwünscht ist, kann man die folgende Zeile auf oberster
Ebene der Quelldatei, vor Beginn eines \book, \bookpart
oder \score-Blocks einfügen:
#(ly:set-option 'midi-extension "midi")
Diese Codezeile setzt die Dateiendung auf .midi.
Als Alternative kann man diese Option auch als Kommandozeilenparameter übergeben:
lilypond … -dmidi-extension=midi lilyDatei.ly
Instrumentenbezeichnungen ¶
Das MIDI-Instrument, mit dem ein bestimmtes System wiedergegeben
werden soll, wird durch die Staff.midiInstrument-Eigenschaft
bestimmt, die auf eine Instrumentenbezeichnung gesetzt werden muss.
Die Bezeichnungen sind aufgelistet in MIDI-Instrumente und müssen
in der dort definierten Schreibweise notiert werden.
\new Staff {
\set Staff.midiInstrument = "glockenspiel"
...Noten...
}
\new Staff \with {midiInstrument = "cello"} {
...Noten...
}
Wenn die Schreibweise nicht genau einem definierten Instrument aus
der Liste entspricht, wird ein Piano-Klang benutzt ("acoustic grand").
Ausgewählte Schnipsel ¶
Changing MIDI output to one channel per voice ¶
When outputting MIDI, the default behavior is for each staff to represent one MIDI channel, with all the voices on a staff amalgamated. This minimizes the risk of running out of MIDI channels, since there are only 16 available per track.
However, by moving the Staff_performer to the Voice
context, each voice on a staff can have its own MIDI channel, as is
demonstrated by the following example: despite being on the same staff,
two MIDI channels are created, each with a different
midiInstrument.
\score { \new Staff << \new Voice \relative c''' { \set midiInstrument = "flute" \voiceOne \key g \major \time 2/2 r2 g-"Flute" ~ g fis ~ fis4 g8 fis e2 ~ e4 d8 cis d2 } \new Voice \relative c'' { \set midiInstrument = "clarinet" \voiceTwo b1-"Clarinet" a2. b8 a g2. fis8 e fis2 r } >> \layout { } \midi { \context { \Staff \remove "Staff_performer" } \context { \Voice \consists "Staff_performer" } \tempo 2 = 72 } }![]()
Bekannte Probleme und Warnungen ¶
Veränderungen der MIDI-Lautstärke sind nur effektiv, wenn sie zu Beginn einer Note angefordert werden, sodass die Lautstärke während einer Notendauer nicht geändert werden kann.
Nicht alle MIDI-Spieler können Tempoänderungen richtig wiedergeben. Spieler, die hierzu in der Lage sind, sind unter Anderen MS Windows Media Player und timidity.
| [ << MIDI-Ausgabe ] | [Top][Contents][Index] | [ Musikalische Information extrahieren >> ] |
| [ < MIDI-Ausgabe ] | [ Up: MIDI-Ausgabe ] | [ Der MIDI-Block > ] |
![[image of music]](../2d/lily-2d42b347.png)