Topページ > Waveshaper
次は 日本古来の音階
|
Max/MSP「ioscbank~」モジュールで倍音列を…
前回「加算合成で倍音列」では、加算合成で倍音列を思いのままに作り出すということで、複数のオシレータを使ってみるということでした。しかし、数十個のオシレータを並べるとCPU負荷が高くなるということで、これまた超高速PCの登場を待たなければならないのでしょうか…?ってところですね。それならば、ノコギリ波の出す奇数偶数の倍音列をフィルタで加工したほうがいい感じですね。
ところで、SynthEditのようにモジュール・タイプで音響合成の出来るソフトウェアに「Max/MSP」というのがあったりします(シェアウェアです)。これに「ioscbank~」というモジュールがあるんですけど、このモジュールは、複数個のオシレータ(デフォルトでは64個みたいです)を使って様々な周波数のサイン波の合成波形を出してくれるそうです。オシレータのモジュールをずらっと並べなくても、このモジュールだけで出来るみたいですね。周波数と音量は一つ一つ設定するので面倒みたいですが、「Max/MSP」には、複数の数値を図形的に入力できるモジュールとかもあるので、マウスだけで設定出来そうですね。
しかし、この「ioscbank~」モジュールは、デフォルトで64個のオシレータを合わせたものと同じ波形を出すので、CPU負荷も高くなりそうですよね。でも、高くならないそうですよ。どういう仕組みで波形を作りだしているのか詳しくは知らないのですが、なんでも、演算で複数のサイン波を合成して波形を作り出し、それを鳴らしているとかですね。ということは、周波数や音量を設定した時にだけ、波形を演算で作りだせばいいですよね。その作り出した波形はメモリに入れておいて、鳴らす時には、そこから呼び出せばいいですよね(でも、短時間に設定を変えると、CPU負荷が高くなりそうですよね)。通常、SynthEditで使っているのオシレータでも、そのつど計算するのではなく、恐らくあらかじめサイン波のサンプルをメモリに入れておいて、それを周波数に応じて、圧縮伸張して?使ってたりするんでしょうね(多分ですが^^;)。
と言う感じで「ioscbank~」みたいなモジュールがあれば、CPU負荷を気にする事もなく、思いのままに倍音列を作り出せるのかな?と思ったりします。SynthEditにも「ioscbank~」みたいなモジュールがあるといいですね。因みに「Max/MSP」に似たフリーのソフトウェアに「Pure Data」というのがあったりしますけど、残念ながら「ioscbank~」みたいなモジュールはないみたいですね。
Copyright (C) FlawTips All Rights Reserved.
|
|
|