3.5.2 MIDI ブロック

MIDI 出力が必要な場合、score 内部に \midi ブロックを置く必要があります。MIDI ブロックはレイアウト ブロックに似ていますが、それよりも単純です。しばしば、\midi ブロックは空のままですが、コンテキストの再編成 -- 新しいコンテキスト定義やプロパティの値を設定するためのコード -- を保持することもできます。例えば以下の例は、テンポ指示を譜刻することなしに、MIDI ファイルの初期テンポを設定します:

\score {
  ...music...
  \midi {
    \tempo 4 = 72
  }
}

この例では、テンポは 1 分間あたり 72 個の 4 分音符にセットされています。\tempo は実際、コンパイルの最中にプロパティを設定する音楽コマンドです: \midi ブロックのような出力定義コンテキストの中にある \tempo は当然のこととして、コンテキストを変更するものとして解釈されます。

\midi ブロック内部でのコンテキスト定義は、\layout ブロック内部でのコンテキスト定義の構文とまったく同じです。サウンドのモジュールへの翻訳は performer と呼ばれます。MIDI 出力のためのコンテキストは ‘../ly/performer-init.ly’ で定義されています -- Other sources of information を参照してください。例えば、MIDI 出力から強弱記号の効果を削除するには、\midi{ } ブロックの中に以下のコードを挿入します。

\midi {
  ...
  \context {
    \Voice
    \remove "Dynamic_performer"
  }
}

MIDI 出力は、\score コマンドで定義された score ブロック内部に \midi ブロックが存在する場合にのみ生成されます。

\score {
  { …notes… }
  \midi { }
}

他の言語: English, deutsch, español, français, italiano
About automatic language selection.

LilyPond — 記譜法リファレンス