FM音源
ヤマハの FM 音源 IC(OPN 系)のように、4 つのオペレータを 8 通りのアルゴリズムでつないで音を作ります。オペレータの波形・周波数比・変調指数を変えると、波形とスペクトラムがすぐに変わります。鍵盤を押すと音で聞けます。
アルゴリズム
オペレータのつなぎ方。右端の列にあるオペレータ(キャリア)の和が出力になり、ほかのオペレータ(モジュレータ)は矢印の先の位相を変調する
OP1 の出力を自身の位相へ戻す量(位相のずれの最大値)。OPN の FB 0〜7 と同じ値
キャリアの振幅の合計が 1 を超えたら、出力を合計で割ってピークをフルスケール以内に収める。キャリアが増えても音が大きくなりすぎない。しないを選ぶと、キャリアをそのまま足す
音
スピーカーへ出す大きさ(0 dB = 波形と同じ大きさ)
波形
基本周波数の何周期ぶんを表示窓の幅に入れるか
中心から端までの振幅(フルスケールを 1 とする)
基本周波数の何倍までを表示窓の幅に入れるか
オペレータ
波形・周波数比・変調指数動作原理と式
FM(周波数変調)音源は、正弦波の位相を別の正弦波でずらして倍音を作ります。変調する側をモジュレータ、変調される側をキャリアと呼びます。キャリアの周波数 の両側に、モジュレータの周波数 の間隔で側帯波が並び、その大きさは変調指数 を引数とするベッセル関数 で決まります。 が大きいほど、遠くの側帯波まで大きくなり、音が明るくなります。周波数比が整数なら、側帯波は基本周波数の整数倍に重なり、音程のはっきりした音になります。
このツールは 4 つのオペレータ(発振器)を持ちます。オペレータ は波形 で、基本周波数 (鍵盤で選ぶ平均律の音。A4 = 440 Hz)の 倍で発振し、アルゴリズムで決まったモジュレータの出力に変調指数を掛けて位相に足します。キャリアの出力に振幅 (出力レベル を dB から直したもの)を掛けて足したものが出力です。キャリアが 2 つ以上あると、足した分だけ出力が大きくなります。音量の調整を「する」にすると、振幅の合計が 1 を超えたときに出力を合計で割り、ピークをフルスケール(1)以内に収めます。キャリアどうしの大きさの比は変わりません。OP1 は自身の直近 2 標本の平均を、帰還量 を掛けて自身の位相に戻せます。 を大きくすると、のこぎり波に近づき、さらに大きくすると雑音になります。波形は正弦波のほか、三角波(tri)・のこぎり波(saw)・矩形波(sq)・半波整流(hsin、正弦波の負の半分を 0 にしたもの)・全波整流(asin、正弦波の絶対値)・四分波(qsin、全波整流の各半周期の後ろ半分を 0 にしたもの)を選べ、どれも位相 0 で 0 から始まります。正弦波でない波形はもとから倍音を含むため、変調指数が小さくても音が明るくなります。時刻 0 ですべてのオペレータの位相を 0 にして計算し、波形とスペクトラムは 1 周期を 512 点に分けて、音は出力のサンプリング周波数で計算します。スペクトラムは 32 周期ぶんにブラックマン-ハリス窓を掛けて求め、振幅 1 の正弦波を 0 dBFS とします。
出典: J. M. Chowning, “The Synthesis of Complex Audio Spectra by Means of Frequency Modulation,” Journal of the Audio Engineering Society, vol. 21, no. 7, pp. 526–534, 1973(FM による音の合成と側帯波)。8 通りのアルゴリズムと帰還量 FB 0〜7(0・π/16〜4π)は、ヤマハの OPN 系 FM 音源 IC(YM2203・YM2608・YM2612)の仕様にならう。半波整流・全波整流・四分波は、ヤマハの OPL2(YM3812)の波形選択にならう。オペレータの出力の大きさの決め方と帰還の大きさは、このツールの実装による。