[ << 専門的な記譜法 ] | [Top][Contents][Index] | [ 入出力全般 >> ] |
[ < 打楽器の譜 ] | [ Up : 打楽器で共通の記譜法 ] | [ ゴースト ノート > ] |
カスタム打楽器譜
カスタム打楽器スタイルを定義することができます。スタイルは連想配列として定義し、drumStyleTable
プロパティにセットします。連想配列の各エントリは 4 つのアイテムからなります:
名前・符頭のスタイル (デフォルトは default
)・アーティキュレーション (必要ない場合には #f
)・譜内の符頭の位置です。この連想配列は最終的に
alist->hash-table
関数を用いて Scheme ハッシュテーブルに変換しなければなりません。
#(define mydrums '( (bassdrum default #f -1) (snare default #f 0) (hihat cross #f 1) (halfopenhihat cross halfopen 1) (pedalhihat xcircle stopped 2) (lowtom diamond #f 3))) up = \drummode { hh8 hh hhho hhho hhp4 hhp } down = \drummode { bd4 sn bd toml8 toml } \new DrumStaff << \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums) \new DrumVoice { \voiceOne \up } \new DrumVoice { \voiceTwo \down } >>
drumPitchNames
変数を連想配列として再定義することで、これらのカスタム スタイルに新たな名前を追加することもできます
(あるいは下の例のように、新たなリストを既存の値に
append
することによって追加することもできます)。また、各項目を直接追加することもできます。これを用いて、エイリアス (略記法) を定義することができます。
drumPitchNames = #(append '((leftsnap . sidestick) (rightsnap . ridecymbal)) drumPitchNames) drumPitchNames.ls = #'sidestick drumPitchNames.rs = #'ridecymbal \drums { leftsnap4. rightsnap8 leftsnap4 rightsnap ls8 rs ls rs ls4 rs }
同様に、drumPitchTable
プロパティは音符名と MIDI ピッチ (MIDI サウンドフォントの楽器音) を関連付けています。このプロパティもハッシュテーブルとして定義される必要があり、連想配列 (デフォルト値が midiDrumPitches
変数にセットされています) から変換しなければなりません。関連付けを変更する方法は上記と同様で、連想配列全体を定義し直すか、各要素を変更するかのどちらかになります。次の例は、入力構文・出力スタイル・対応する MIDI 出力を含めた、新たな記譜法のセットを作る方法を示しています。
drumPitchNames.dbass = #'dbass drumPitchNames.dba = #'dbass % 'db は既に使われています drumPitchNames.dbassmute = #'dbassmute drumPitchNames.dbm = #'dbassmute drumPitchNames.do = #'dopen drumPitchNames.dopenmute = #'dopenmute drumPitchNames.dom = #'dopenmute drumPitchNames.dslap = #'dslap drumPitchNames.ds = #'dslap drumPitchNames.dslapmute = #'dslapmute drumPitchNames.dsm = #'dslapmute #(define djembe-style '((dbass default #f -2) (dbassmute default stopped -2) (dopen default #f 0) (dopenmute default stopped 0) (dslap default #f 2) (dslapmute default stopped 2))) midiDrumPitches.dbass = g midiDrumPitches.dbassmute = fis midiDrumPitches.dopen = a midiDrumPitches.dopenmute = gis midiDrumPitches.dslap = b midiDrumPitches.dslapmute = ais test = \drummode { dba4 do ds dbm dom dsm } \score { \new DrumStaff \with { \override StaffSymbol.line-count = #3 instrumentName = "Djembé " drumStyleTable = #(alist->hash-table djembe-style) drumPitchTable = #(alist->hash-table midiDrumPitches) } { \time 3/4 \test } \layout {} \midi {} }
参照
インストールされているファイル: ly/drumpitch-init.ly
コード断片集: Percussion
[ << 専門的な記譜法 ] | [Top][Contents][Index] | [ 入出力全般 >> ] |
[ < 打楽器の譜 ] | [ Up : 打楽器で共通の記譜法 ] | [ ゴースト ノート > ] |