idea: software MIDI device implementation to integrate synthesizers

| No Comments | No TrackBacks

週末にFM音源エミュレータやらCSoundやらchuckやらを眺めていてふと思ったのだけど、これらの音源を使った音色は、たとえいいものが出来ても、それ以上使われずに死んでいっているのではないか。それは、CSoundで作った音色はCSoundでしか使えず、chuckで作った音色はchuckが無いと使えず、MAX/MSPで作った音色はMAX/MSPが無いと使えないというところにあるのではないか。

ひとつのソリューションとしては、これらをVST Pluginとして外部的に操作するインターフェースを用意することで、シーケンサからシームレスに操作するという方法があり得る。しかしVSTには移植性が無く、linux-vstなどを使ってwineで実現できる範囲のものでしか操作できない。音源モジュール自体がクロスプラットフォームなのに、これでは意味が無い。

であれば、そもそも仮想的なソフトウェアMIDI音源モジュールを作成して、それぞれの音色に対して出力モジュールをマッピングし、実際の発音はそのソフトウェア上で行う、という仕組みはどうだろうか。マッピング自体は定義ファイルのような形でユーザがプリセットし、あるいはWebから演奏時にダウンロードする形にもできる。

このソフトウェア自体がするべきことは、 

  • MIDIドライバとして各OSないしソフトウェアフレームワークが認識できるようなエントリポイントを作ること(たとえば、SilverlightであればAudioStreamSourceがpure managed codeで提供されない限り無理だ)

  • MIDIメッセージを受け取って、音色から、音源モジュール(他のMIDI音源に対するTHRUを含む)に渡すためのディスパッチャの仕組みを作ること

  • 代表的な音源モジュールに対するメッセージ ディスパッチャを実装すること

  • その他ユーザ プリセットの読み込み、ダウンロード

これくらいでいけるのではないか。音源モジュール(pdやcsoundなど)は、バンドルできるものはバンドルしてもいいし、on-demandでダウンロードできるようにしてもよい。

No TrackBacks

TrackBack URL: http://veritas-vos-liberabit.com/noteon/mt-tb.cgi/12

Leave a comment

About this Entry

This page contains a single entry by note on published on March 22, 2009 12:11 PM.

MML文法を考える - スラーの解決 was the previous entry in this blog.

MML文法を考える - tokenization is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.

Categories

Pages

OpenID accepted here Learn more about OpenID
Powered by Movable Type 4.23-en