SynthMaker奮闘日記~その4

今回は前回ののこぎり波のデータを書き換えて、「方形波」「三角波」を描こうと思います。
前回根本のプログラムをほとんど作ってしまっているので、今回は理論が主です。
面倒ですががんばっていきましょう^;


理論


さて、前回のこぎり波は2倍波以上のすべての波がまざってできている形だといいましたが、
今回紹介する「方形波」「三角波」も倍音の波がまざってできているものです。
しかし、のこぎり波ほど単純ではないのですw;

まず「方形波」の式をまとめます。
imageプラグインエラー : ご指定のファイルが見つかりません。ファイル名を確認して、再度指定してください。 (VST_math02.png)
上の式からわかるとおり、「方形波」は(2n - 1)倍波、つまり奇数倍の波だけを合成した形です。
もちろん音量も倍数に反比例しています。
これは考察なんですが、基準波に対して3倍波は凸(でこ)・凹(ぼこ)・凸(でこ)の形になっています。
なので波の端を押し上げるような形になっています。

これが大きくなればなるほど繰り返されるので、ピーク値に平坦になるんだと思います。

まぁ計算すればわかってしまうのかもしれませんがw;

次はお待ちかね、「三角波」です。
imageプラグインエラー : ご指定のファイルが見つかりません。ファイル名を確認して、再度指定してください。 (VST_math03.png)
なんじゃこりゃ(°д°`;;)
今回も(2n - 1)、つまり奇数倍波のみがまざっているのがわかりますが、それが自乗に反比例して音量が減速しています。
さらには波の符号をコロコロ変えています。
この符号は位相反転と云って、波の正負を逆転するものです。

言葉で説明するのもややこしい音ですね…

方形波

先ほどもいったのですが今回は前回の回路を使います。

それも「sine」コンポーメントの中の「Int」の値だけを変えます。

これをそれぞれ「1」「3」「5」「7」「9」「11」「13」「15」「17」「19」に書き換えます。
するとすぐに方形波が作れます。
完成するとこのような波形になるはずです。

三角波

上の方形波の回路を使って、音量をさらに小さく、かつ(-1)、つまり波の上下反転が発生できるように調整します。

できるだけ図を単純にしたつもりですが、わかりにくいですね^;
四角で囲まれている文字が今回追加するコンポーメントです。

1.自乗するためのコンポーメント
今回新しい種類のコンポーメントが出ています。
「^」です。
これはべき乗をつかさどるコンポーメントになります。
べき乗と云うのは、「aのn乗」といったものです。
ここではnが上から、aが下から入力になります。

このコンポーメント、「×」や「/」等と違って特殊で、「Float」にしか存在しませんので注意してください。
(FloatはIntの整数に対して、小数を扱います。つまり小数を入力することも可能ですが今回は使いません)

2.位相を反転するためのコンポーメント
こちらは最後に「Int」と「×」をつけただけです。
ここで「Int」は合成する波によって「1」か「-1」か変わってきますので注意してください。

この回路を値を変えつつすべてのsineに入力すると、三角波ができます。


完成

以上これで方形波と三角波ができました。
もちろん簡単に作る方法はあるので、まとめます。

実は方形波はSynthMakerに用意されていないようなので、
最も単純にプログラムしてみました。
様は正の値を1に、負の値を-1にすれば良いので、プログラミングは簡単です。
このプログラミングの方法については今度説明します。


三角波は用意されているのでこれを使います。


これで代表的なシンセサイザーのオシレーターの波がまとまりました。
ぶっちゃけると、これでもうシンセサイザーは作れます。
なので番外編をはさんで、その次回は簡単なシンセサイザーを作ろうかと思います。
まぁこの時点では波を単純に合成するだけのものになりますが、何事も基本は大事です。

次は番外編になります。
番外編では前回と今回にかけてやった波の加算合成の実験用のプログラムを配布&解説します。
プログラム内部についてはあんまり詳しくさらわない(ここでやるとややこしくなるのを混ぜてしまってますw;;)ので、
飛ばしたい方はどうぞ飛ばしてください。
SynthMakerを持っていない方はお待たせしました。
どうぞ合成して遊んでくださいw

ではでは、また次回。



最終更新:2010年03月16日 16:48
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。