ペダルの開閉を、画面表示に反映させる
電子ドラムのハイハットの開閉の度合いを表示できるよう、MidiInChecker2を改造しました。
(MIDI入力で、今まではNote Onだけを受け付けていたのを、コントロールチェンジも受け付けるように変更した。)
ハイハットの開閉度合いに応じて、コントロールチェンジの4番が出力されるはずです。 改造したMidiInCheker2をこのチケットに添付していますので、すみませんが、電子ドラムをお持ちの方、動作確認いただけないでしょうか。
参考までに、私のところで、YAMAHA DTXPRESS 3 SPを使って動作確認した限りでは、 踏み込んでいくと最初は全くコントロールチェンジ4番が出力されませんが、 ハーフオープンくらいのあたりから出力が始まり、コントロールチェンジ4番とセットで出力される値(閉じ度合い)が 急激に大きくなり、踏み切るまでそれが続く、といった感じです。 (ペダルの感度をそんな風に調整していた、とも言いますが。)
これを使えば、閉じ度合いの閾値80くらいでHHの開閉のグラフィックを変化させたり、 踏みっぱなしの間はレーンを光らせたり、 NoteOn信号に頼らなくてもペダルの踏み込みを検出で来たりできそうだなぁ、と思ってます。
なお、改造したMidiInCheker2や、これに相当するFDKは、先日既にtrunkにコミット済みです。
DTX シリーズでは CC4で検知できるんですよね。 でも V-Drums だとそれは出力されないので、NoteOn に頼るしかないようです。
そしてその NoteOn はご存じの通り HHClose のみであり、V-Drums から HHOpen が出力されることは一切ありません。 かつ、音源側ではその Note の Velocity を 0~90 と 0~127 の2種類から選択可能で、工場出荷値は前者になっています。 (この仕様は、VH-11/12 だけかも知れません。)
この選択値はMIDI規格では取得できないので、SST ではずばりキーアサイン時に完全解放から完全踏み込みまでの値域をスキャンするようにしています。
ああ、失礼。なんらかの CC は出てたかも知れません。
今晩にでも試してみます。
チェックしてみました。
OPはB9か99、Ch.は04、Varは0~127でした。
HHの解像度を低くすると、Varは0~90になりました。
MidiInChecker.NET v1.0.0 のほうでも、「コントロールチェンジ#04、フット・ペダル」として表示されています。
OPがブレるのは、リアル性を出すためにV-Drums側がわざと出力するように設計されているためです。
ふろろぐにも書いたとおり、これらを真面目に入力として受け取ると Miss の嵐になりますw
fromさん、確認いただきありがとうございます。ふろろぐに記載いただいた内容も含めてまとめますと、こんなところでしょうか。(DTXPRESS3SPの内容は、以前私が調べたものです)
VH-11/12
Control Change | Note On | 備考 | |
OP→CL | 04(Fool Pedal) | 何か | フットペダルか、何かのNoteOnか、もしくはその両方が発生する。Foot Pedalのvelocity上限値は90か127。 |
CL→OP | HH-OPが1-2個 | ||
CLを叩く | HH-OP | 電子ドラム側では、HH-CLの音が鳴る。MIDI出力はHH-OP。 |
DTXPRESS3SP
Control Change | Note On | 備考 | |
OP→CL | 04(Fool Pedal) | HH-OP か FootSplash | 踏み方でどちらかが発声+出力される |
CL→OP | 04(Foot Pedal) | なし | |
CLを叩く | HH-CL |
電子ドラムのHHペダルの開閉を、画面表示に反映させたい。