GarageBandでVOPMが使えるようになったので、昔作ったMDXデータでも移植してみようかと思ったんだけど、思わぬところで躓いた。
当時、MDXでポルタメント(キーオンしたまま別の音に滑らかにつなぐ)を再現するのにピッチベンドを利用してた。しかもmxdrvのベンドレンジは異常に広く(正確にどのくらいかは知らない)て、3オクターブ離れた音とかにも平気でベンドがかけられた。翻って、GarageBandはピッチベンドはできるものの、そのベンドレンジは1音。
ノォ〜っ!これじゃシンセベースでベンド使いまくってるデータとか移植できないじゃん。さて困った。
なんか方法は無いもんかと、VOPMの仕様を眺めてみると、
ピッチベンドセンシティビティ:[Bn 65 00 Bn 64 00 06 mm](ベンドのレンジ ±mm半音)
という表記が。一応MIDI規格に準拠してて、仕様的にはベンドレンジの設定ができるようなので、ちょっとした思いつきを実行してみることにした。
思いつきというのは、GarageBandがSMFが読めることを利用して、コントロールチェンジ情報だけを埋め込んだSMFをインポートすることでベンドレンジのパラメータをセットできないか?というもの。安直だけどやってみる価値はありそう。
まずは、コントロールチェンジ情報を設定したSMFの作成。VIALというフリーのMIDIシーケンサを使った。ベンドレンジを変えるには、
BnH 65H 00H RPN MSB
BnH 64H 00H RPN LSB
BnH 06H 0CH データエントリーMSB(0CH=12 [1oct.])
の仕様通りのデータをセットすればいい。RPNについての詳細は省略するので、詳しく知りたい人はこのへんを参考に。
![]() |
とりあえず、ベンドレンジを2オクターブに設定することにしたので、データエントリーMSBには24を設定する。するとこんな感じの設定になった。
TYPE DATA1 DATA2
CTRL 101 0
CTRL 100 0
CTRL 6 24
※規格の仕様書には16進表記で書いてあるのに、実際にシーケンサで指定するときは10進表記なのはなんでなんだろう?昔から疑問なんだけど。
これでシーケンスデータは完成。「File」メニューから「Export SMF…」を選んで保存すればSMFデータの出来上がり。次にGarageBandを立ち上げて新規ファイルを作り、リージョンが表示されるところにでき上がった.midファイルをドラッグ&ドロップすれば、インポート完了。
![]() |
![]() |
インポートすると、2つのトラックが出来るけど情報が含まれるのは「Track 1」と書かれたリージョンのほうなので、なにも書かれていないリージョンは削除した。
これで準備完了。インポートしたリージョンが含まれるトラックの音色をvopm.vstに設定し、適当に音色を定義した。んで、1分音符分くらいの長さで音を鳴らしでベンドを設定。できたできた!ちゃんと2オクターブ分ベンドできた!(耳で聞いただけの印象だけども)
これはと思って、標準のソフトウェア音源にも試したけど、こっちはダメだった(しょぼーん)GarageBandの標準音源ってすごくいい音だと思うんだけど、このへんで融通が利かないのが残念。ともあれベンドでビヨビヨやりたい時はこれで補完できそうだ。
必要な人が居るとは思えないけど、もし興味がある方がいれば作った.bandファイルをここに置いておくのでどうぞ。(といっても、単にo3Cからo5Cまで音階が変化するだけのデータ)ただ、実際に再生するにはvopm.vstをGarageBandで使えるようにしてある必要があるので注意。




