[ << 入出力全般 ] | [トップ][目次][インデックス][ ? ] | [ スペースの問題 >> ] | ||
[ < ] | [ 上へ : MIDI 出力 ] | [ 何が MIDI に出力されるのか? > ] |
3.5.2 MIDI ブロック
MIDI 出力が必要な場合、score 内部に \midi
ブロックを置く必要があります。MIDI ブロックはレイアウト ブロックに似ていますが、それよりも単純です。しばしば、\midi
ブロックは空のままですが、コンテキストの再編成
– 新しいコンテキスト定義やプロパティの値を設定するためのコード –
を保持することもできます。例えば以下の例は、テンポ指示を譜刻することなしに、MIDI ファイルの初期テンポを設定します:
\score { ...music... \midi { \context { \Score tempoWholesPerMinute = #(ly:make-moment 72 4) } } }
この例では、テンポは 1 分間あたり 72 個の 4 分音符にセットされています。この種のテンポ指定では引数として付点音符の長さをとることはできません。付点音符の長さを指定する必要がある場合、その付点音符をより小さな単位に分解します。例えば、1 分間に 90 個の付点 4 分音符のテンポは、1 分間に 270 個の 8 分音符として指定することができます:
tempoWholesPerMinute = #(ly:make-moment 270 8)
\midi
ブロック内部でのコンテキスト定義は、\layout
ブロック内部でのコンテキスト定義の構文とまったく同じです。サウンドのモジュールへの翻訳は performer と呼ばれます。MIDI 出力のためのコンテキストは
‘../ly/performer-init.ly’ で定義されています
–
その他の情報源 を参照してください。例えば、MIDI 出力から強弱記号の効果を削除するには、\midi{ }
ブロックの中に以下のコードを挿入します。
\midi { ... \context { \Voice \remove "Dynamic_performer" } }
MIDI 出力は、\score
コマンドで定義された score ブロック内部に
\midi
ブロックが存在する場合にのみ生成されます。\midi
ブロックが明示的にインスタンス化された score コンテキストの中
(例えば、\new Score
ブロックの中) に配置された場合、その LilyPond ファイルはエラーになります。これを解決するには、\new Score
と \midi
コマンドを
\score
ブロックの中に置きます。
\score { \new Score { …notes… } \midi { } }
[ << 入出力全般 ] | [トップ][目次][インデックス][ ? ] | [ スペースの問題 >> ] | ||
[ < ] | [ 上へ : MIDI 出力 ] | [ 何が MIDI に出力されるのか? > ] |