正直日記



2008/09/18

_ SMFからvgm/vgzを捏造するツール「VGMGEN」
仕様が固まっていないのでやっつけのままになりますが、VGM形式のファイルを
捏造するツール「VGMGEN」を公開します。


  VGMGEN 080918


MDソフトのページにも載せました。
ソースを同梱しています。適当に利用・改造してください。MML に対応すると、
誰かがうれしいんじゃないかと思います。

以下ドキュメントから抜粋。

●使い方 > vgmgen hoge.opm hoge.mid カレントパスに test.vgm と test.vgz を出力します。 ●仕様 MIDIチャネルと音源の対応が固定です。  ch 1-6 OPN2  ch 7-9 DCSG  ch 10 NOISE およそStandard MIDI仕様に則っていますが、いくつか独自仕様があります。 ◇ 一つのチャネル内でノートを重ねた場合、無条件でレガートします。 ◇ DCSG音源はエンベロープを持っていません。   エクスプレッション(CC:11)を音量に対応させたので、根性で乗り切ってください。 ◇ FMチャネルは Volume にも Expression にも対応してません。 ◇ ノイズチャネルはPCによって 1-8 の範囲で音色が指定可能です。    1: パルス波 6991Hz    2: パルス波 3495Hz    3: パルス波 1747Hz    4: パルス波 3579545Hz    5: ホワイトノイズ 6991Hz    6: ホワイトノイズ 3495Hz    7: ホワイトノイズ 1747Hz    8: ホワイトノイズ 3579545Hz   音色4, 8を指定したとき、DCSGチャネル 3 によって音程が変更可能です。   (逆に言うと、チャネル 3 を使用時は、4, 8番音色のノイズは動いてしまう) ◇ ピッチベンドは FM音源はピッチベンドレンジの NRPN に対応。   デフォルト12で、-8192 〜 +8191 で 2 オクターブまでカバーします。   DCSGはレンジ 12 固定です。   どちらも、レジスタにそのまま値を書き込むので、   音程が均等ではないことに注意してください。 ◇ FMはポルタメントに対応しています。ポルタメントタイム(フレーム単位)を   指定すると、即座に有効になります。無効にするには 0 を指定してください。 ◇ CC:56でループポイントが設定できます。 ●分かっている不具合  DCSGが音痴。 ●ソースについて  自由に改造してください。  のちほどDCSGエンベロープと、効果音モードと、DACに対応する予定ですが、 誰かが代わりにやってくれてもいいんですよ!  Brightness の CC あたりで TL を操作できるようにしたりとかも構わないです! あと基本的ですが、出力を「test.vgm 固定」から「入力ファイル名.vgm」に してくれても、全然構いませんよ!
ここからブランチして、MD音源ドライバ用のデータ生成ツールを作ろうかと考え ています。ドライバの仕様が固まらないので現段階でストップしてたり。
_ DCSGを使い倒すには(2)
前回の続きです。

ch.3を発音するとなんかノイズチャネルの音が変わるなーとは思っていたんです
が、ボヤッとしている間にkeimさんに先を越されが詳細に調べてくださいました。
どうもありがとうございます!

周波数モード=3の場合(レジスタ値=0xE3(PeriodicNoise)/0xE7(WhiteNoise)), 矩形波チャンネルの3番の周波数でノイズチャンネルをシフトできるらしい. Simple Inspiration - DCSGのノイズチャンネルの周波数の設定について
そうか、そういうことだったのか……。あと、1番音色ノイズが100サンプルに対 して10サンプルだったのでDuty比10%かと思っていたけど、実際には6.6%らしい。 ノイズチャネルが独立しているとは言え、一番使いやすいであろう8番音色ノイズ が3チャネルの音程と同期しているということは、ハイハット的な使い方をしてい る間は1音削らなくてはならないということになる。効果音として利用する際も 注意しなければならないな。 さっきからノイズに対して「1番音色」だの「8番音色」だの言っていますが、次 のエントリで明らかにします。 -- 以下余談。
自分は小学生の頃,FM7のPLAY文/SOUND文でDTMへの門戸を開いた人間なので, 非常に馴染み深い.
僕も小学生の頃に、FM-7で色々打ち込みましたが、生まれて初めて打ち込んだ曲 は(ROM-BASICで打ち込んだ物はディスクに保存出来ないことを知らなくて)闇 へと消えました。一曲打ち込み終わった達成感のあとに、あんな絶望感を味わう ことになろうとは、当時知る由もなかった……。

最新
2010 | 01 04
2009 | 01 02 03 04 05 06 07 09 10 11 12
2008 | 01 02 03 04 05 06 07 08 09 10 11 12
2007 | 02 03 04 05 06 07 08 10 11 12
2006 | 01 02 03 04 05 06 07 08 09 10 11 12
2005 | 01 02 03 04 05 06 07 08 09 10 11 12