MIDI の音量を設定する

全体の MIDI 音量の最小値と最大値は、midiMinimumVolumemidiMaximumVolumeScore レベルでセットすることで設定できます。これらのプロパティはボイスの開始時か強弱記号が配置された時に適用されます。それぞれの強弱記号に対応する音量の割合は次の式で計算されます:

midiMinimumVolume + (midiMaximumVolume - midiMinimumVolume) * fraction

次の例では、全体の MIDI 音量の範囲を 0.2 - 0.5 に制限します:

\score {
  <<
    \new Staff {
      \set Staff.midiInstrument = "flute"
      … music …
    }
    \new Staff {
      \set Staff.midiInstrument = "clarinet"
      … music …
    }
  >>
  \midi {
    \context {
      \Score
      midiMinimumVolume = #0.2
      midiMaximumVolume = #0.5
    }
  }
}

楽器ごとの音量を均等化するための単純な方法は、midiMinimumVolumemidiMaximumVolume プロパティを Staff コンテキストでセットすることです:

\score {
  \new Staff {
    \set Staff.midiInstrument = "flute"
    \set Staff.midiMinimumVolume = #0.7
    \set Staff.midiMaximumVolume = #0.9
    … music …
  }
  \midi { }
}

複数の譜を持ち、複数の MIDI 楽器を用いる楽譜では、それぞれの相対的な音量をセットすることができます:

\score {
  <<
    \new Staff {
      \set Staff.midiInstrument = "flute"
      \set Staff.midiMinimumVolume = #0.7
      \set Staff.midiMaximumVolume = #0.9
      … music …
    }
    \new Staff {
      \set Staff.midiInstrument = "clarinet"
      \set Staff.midiMinimumVolume = #0.3
      \set Staff.midiMaximumVolume = #0.6
      … music …
    }
  >>
  \midi { }
}

この例では、フルートの音量に比べてクラリネットの音量が減らされています。

これらの音量プロパティがセットされていない場合でも、LilyPond は特定の楽器に‘わずかな’音量の均等化を行っています。scm/midi.scm を参照してください。

インストールされているファイル: scm/midi.scm

参照

記譜法リファレンス: 楽譜レイアウト

内部リファレンス: Dynamic_performer

Selected Snippets

デフォルトの MIDI 楽器の音量を置き換える

デフォルトの MIDI 楽器の音量は Score コンテキストの instrumentEqualizer プロパティをセットすることで置き換えることができます。セットするのは Scheme 関数で、音色名を引数で与えられた際にその音色に対応する最小音量と最大音量 (音量は割合で指定) のペアを返すものです。

次の例は、それぞれフルートとクラリネットに対して最小音量を最大音量をセットしています。

#(define my-instrument-equalizer-alist '())

#(set! my-instrument-equalizer-alist
  (append
    '(
      ("flute" . (0.7 . 0.9))
      ("clarinet" . (0.3 . 0.6)))
    my-instrument-equalizer-alist))

#(define (my-instrument-equalizer s)
  (let ((entry (assoc s my-instrument-equalizer-alist)))
    (if entry
      (cdr entry))))

\score {
  <<
    \new Staff {
      \key g \major
      \time 2/2
      \set Score.instrumentEqualizer = #my-instrument-equalizer
      \set Staff.midiInstrument = "flute"
      \new Voice \relative {
        r2 g''\mp g fis~
        4 g8 fis e2~
        4 d8 cis d2
      }
    }
    \new Staff {
      \key g \major
      \set Staff.midiInstrument = "clarinet"
      \new Voice \relative {
        b'1\p a2. b8 a
        g2. fis8 e
        fis2 r
      }
    }
  >>
  \layout { }
  \midi {  }
}

[image of music]

既知の問題と警告

MIDI での音量変化は音符の開始時にのみ適用されます。そのため、クレッシェンドやデクレッシェンドが単一の音符に適用された場合、音量は変化しません。


LilyPond 記譜法リファレンス v2.25.22 (development-branch).