VOPM[Virtual fm synthsizer,like OPM(for Win)]
- VST PlugIn Interface Technology by Steinberg Media Technologies AG.
2008.04.19 Ver0.17
1.概要
FM音源のOPM(YAMAHA YM2151 4op)のようなVstPlugIn Instrument DLL(for Win)
m_puusan 氏作成のX68k Sound Generator( X68Sound.dll)
のOPMエミュレーション部分を基に機能拡張したVstPlugInです。
音色エディタがGUIのバージョンと、VST標準のバージョン(以下NW)を用意しました。GUI版の方が若干処理が重いです。
※負荷は、常に8音分、10%程度(VST32@Duron850Mhz)かかります。
ソースコードをつけましたので、Win以外への移植、VstPlugInの学習にご利用ください。
またVOPM(GUI版)はフリーウエアですが、
1)バグ発見時報告
2)VOPMを使用した曲を制作したときの報告。
をいただけるとありがたいです。
機能
- 最大同時発音数 8音
※チャンネルがすべて使用中の時、最初のNoteOnが消音され新規のNoteOnが発音される。
- 音色 128音色登録可能
- モノ/ポリフォニック対応
モノフォニックモードでは、MidiChがそのままOPMのチャンネルに対応し、後着優先発音になります。
またこのとき後着ノートはアタックが発音されません。
2.動作環境
- ハード:IBM AT互換機、16bit ステレオサウンド対応音源付き
- OS:Win95,98,Me,XP
- VST2.3対応Host
- 開発環境:
- コンパイラ Borand
C++builder 5 Dev C++
Ver4.9.9.2(Ver0.13より)
- OS WinXP(アスロン2000)
- MIDI KeyBoard YAMAHA CBX-K1XG
- Host Cubase VST SX Ver1.02 DEMOで動作確認
3.説明
3.1 インストールと実行
1)VOPM.zipを解凍します。
2)VOPM.DLLをPlugInディレクトリに入れます。
3)デフォルト音色ファイルVOPM.fxbをPligInディレクトリかHost(CubaseVST等)と同じディレクトリに入れます。
ホストによってどちらのディレクトリになるか異なるので、分からなければ両方にいれてみてください。
(なくても動きますが、読み込めない時はすべて同じ音がバンクにセットされます。)
以上でインストールは終了です。
3.2 操作(VOPM)
3.2.1 プログラムナンバー
VST標準のセレクターを使用して編集するプログラム(パッチ)を変更します。
現在選択されているプログラムナンバーを示しています。(表示のみ、変更はできない)
3.2.2 bank,Instrumentのload,save
VST標準セレクタのFileを使用します。VST標準のフォーマットで読み書きします。
3,2,3 Import,Export
オリジナルの音色ファイルで読み書きします。
詳細は3.3を参照。
3.2.4パラメータ
ボタンタイプのパラメータとスライダータイプのパラメータがあり、スライダータイプは、それぞれパラメータ値が上部に
表示されています。表示は10進数、16進数の選択が左のHEX-DECと表示されたボタンでできます。
なおパラメータはOPMと同じ範囲で指定し、同じ効果があります。
またPROG内のAMS-EnとNoiseはそれぞれ、各OPのLFO使用と、C2をNoiseにするかを選択するボタンです。
スライダー入力方法
1)左ボタン押し下でスライダーKobを動かせます。ただし最大値が1Fh以上あるパラメータは、精度の都合で調整しきれない場合があります。その場合は
2)-4)の方法で調節してください。
2)シフト+左ボタンクリックでスライダーKobがパラメータ1増減します。マウスカーソルがKobより上にある時が増加、下にあるときが減少で
す。
3)MouseWheelもしくはキーボードの'+','-'で1ずつUpDownできます。
4)スライダー部分でキーボードの'0'-'9'および'A'-'F',DEL,BSで16進数による電卓形式での直接入力ができます。
※作者の環境(Cubase)では、一部がCubase自身のショートカットに割り当てられているようで、シフトを押しながらでなければ正常な入力ができ
ませんでした。
5)スライダー部分でキーボードのAltを押すと、数字が赤くなり
MIDILearnモードに入り、次に受信した未定義のCcをそのスライダーに割り当てることができます。
学習するCcを受信するか、フォーカスが失われると数字が白に戻り
MIDILearnモード終了となります。
なおこの機能で動かした値は編集中の音色にしか作用しませんので、音色編集
用と割り切ってください。
※3)4)はVST2.1よりホスト側に拡張された機能を使用しています。ホストによっては最新バージョンでも対応していないようです。
3.2.5 EGカーブ
エンベロープジェネレータの波形を擬似的に表示しています。表示の上で左ボタン押下で、X軸方向に拡大表示します。
3.3 音色データについて
デフォルトで読み込む音色ファイルはVOPM.fxbです。
MDXファイルから音色データをコンバートするソフト(MDXPG)を同梱しましたので、よろしければご利用ください。
4.注意事項
- 基本的にはプログラム実行による不具合、損害に関して無保証ですが、バグに関しては、報告いただければできる範囲で善処したいと思います。
- その他動作に関する注意事項はX68Sound.dllの 注意事
項
と同じです。
- VST
SDKのsampleとX68Sound.dllのソースコードをベースとして使用しています。それぞれ元著作者からクレーム、なんらかの指示があった場
合はそれに従いたいと思います。
- X68Sound.dllがなんらかの理由により公開不可、使用禁止になった場合は、VOPMも同様の処置をとります。
- フルセットでの個人的な再配布は可ですが、ファイル自体の他サイトへの転載、営利目的の配布は禁止します。
- 質問、不具合報告、はsam_kb@yahoo.co.jpま
で。
- プリセットの音色データはVAL-SOUNDのFM音源ラ
イブラリのデータを使用させていただきました。
- 他プラットホームへの移植、改造公開の
際は、ご一報ください。ただしシェアウエアならびに製品とすることは、引用率にもより
ますが、原則不許可とします。
- MDXファイルや、書籍、WWW等掲載の音色データ引用は、当方は責任を負いません。個人の責任の上で行ってください。
- 仕様は随時、予告なしに変更、改良していきます。よってバージョンによるデータの互換性も保障できません。
5.権利表示
VSTおよびCubaseは、Steinbergの商標です。
Copyright notice: "VST is a trademark of Steinberg Media Technologies
AG."
OPM(YM2151)はYAMAHAの商標(IC,製品)です。
VOPM: Copyright (c) 2002 Sam.
6.謝辞
80年代学生でOPMにあこがれていた私の夢をこの時代にかなえさせてくれたX68sound.dll。
このdllのソース使用とソース同梱配布を快諾してくださいました製作者のm_pussan氏とサンプルプリセット音色データの使用を快諾してくださいま
したVAL-SOUNDのAbo氏に深く感謝いたします。
7.公知のバグ&バグのような仕様(言い訳)
1)Importした音色名が、Cubaseの音色名リストボックスに反映されない。
=>直したいけど直せない仕様。音色セレクタは、ホストの管理下にあるため、プラグインから更新できるような仕様になってないらしい。(情報求
む)。リストはクリックで選択すると、その音色名だけ更新、表示されます。
2)発音してなくても8音分の負荷がかかる。
=>Ver0.05で善処しましたが、ボトルネックが掴めきれず大幅な改善はできませんでした。
3)ホストにより音色管理方法や、プログラムの表示更新の方法が異なるため、プログラムナンバーや音色リストがきちんと変更に対し反映されないこと
があります。
4)たまにEditWindowがへんな場所に描画される。(VOPMのみ)
=>原因不明。同じ操作をしても常に起こるわけでなく、原因究明が難しそうです。音色編集時以外は、EditWindowを閉じ
ておくと良いようです。
=>Ver0.11でGUIライブラリを変えたことにより私の環境では再現できなくなりました。
Copyright(c) 2002 Sam
sam_kb@yahoo.co.jp