Skip to content

エンベロープとモジュレーション

生のオシレーターは静的です。キーを押せば、1 つの音量・1 つの音色で延々と鳴り続けます。しかし実際の楽器は生きています — ノートは膨らみ、明るくなり、減衰し、消えていきます。モジュレーションは「何かが時間とともに変化すること」を表す総称で、平板なシンセ音を音楽的な音に変えるものです。

本ページでは、最もよく出会う 2 種類のモジュレーション源(エンベロープと LFO)、同じくモジュレーションとして働く演奏入力(ベロシティとキートラッキング)、そして源と行き先を配線するモッドマトリクスを説明します。概念のみで、コードはありません。変調される側のブロックについては、先に シンセシスの基礎 を読んでください。

ADSR アンプエンベロープ

エンベロープは、ノートごとに 1 回だけ展開する形(カーブ)です。古典的なエンベロープは 4 段階 — Attack(アタック)・Decay(ディケイ)・Sustain(サステイン)・Release(リリース) = ADSR — を持ち、最も重要なものはノートの一生にわたる音量を制御します。

段階制御するもの長い値の聞こえ方短い値の聞こえ方
アタック無音から最大まで立ち上がる時間ゆっくり膨らむ(パッド、ストリングス)瞬時の打音(撥弦、ピアノ)
ディケイピークからサステインの高さまで下がる時間じわじわ落ち着く素早く下がる
サステインキーを押している間に保持される高さ(時間ではない)大きく保たれる本体(高い値)押していても小さい/消える(低い・ゼロの値)
リリースキーを離した後に消えるまでの時間長い余韻、残響のよう唐突に途切れる

撥弦的な音は、速いアタック・速いディケイ・サステインゼロ・短いリリースです。パッドは、遅いアタック・高いサステイン・長いリリースです。同じオシレーターでも、エンベロープだけでまったく別の楽器になります。

SYNTH · SUBTRACTIVEIDLE
ADSR エンベロープ — 音の立ち上がりと減衰

同じ A3 を、振幅エンベロープで形づくります。アタックとディケイは音がピークへ到達し離れる速さを、サステインはキーを押している間に保つレベルを、リリースはキーを離した後の減衰を決めます。上段の輪郭がそのエンベロープです。コントロールを動かして形を見て、再生で確かめてください。(ここではサステインを完全な 0 にはできません。エンジンは 0 を「プリセット値を保持」と解釈するため、スライダーは 0 の少し上で止まります。)

アタック
8 ms
ディケイ
140 ms
サステイン
0.75
リリース
280 ms

アタック・ディケイ・リリースは時間、サステインは高さ

ADSR の 4 つのうち 3 つは継続時間(ミリ秒)です。サステインだけが例外で、音量の高さ、つまりキーを押し続けている限り保持される量です。だから「サステインゼロ」のパッチは、キーを押したままでも無音になります。

独立したフィルターエンベロープ

アンプエンベロープは音量を整形します。これとは別の独立したエンベロープがフィルターカットオフを整形し、音色を独自のスケジュールで変化させられます。速いフィルターアタックがすぐに下がると、シンセベースの明るい「プラック」になります。遅いフィルターアタックはパッドを開花させます。2 つのエンベロープは独立しているため、ノートが暗くなりながら大きくなる、といった任意の組み合わせが可能です。

LFO — ゆっくり繰り返す動き

LFO(低周波オシレーター)は、ピッチとして聞こえないほど遅いオシレーターです — 典型的には 1 Hz 未満から数 Hz 程度。直接聞かせるのではなく、そのゆるやかな上下の波で何かを変調します。

  • LFO → ピッチ = ビブラート(保持したノートの小さな揺れ)。
  • LFO → 音量 = トレモロ(脈打つ音量)。
  • LFO → フィルターカットオフ = ベースやエレクトロニックな質感のゆっくりした「ワブル」。

LFO の主要なつまみは レート(周期の速さ)と デプス(行き先をどれだけ押すか)の 2 つです。

SYNTH · SUBTRACTIVEIDLE
LFO トレモロ — 目に見える変調

LFO(低周波オシレーター)はピッチとして聴くには遅すぎ、代わりに別の何かを動かします。ここでは LFO 1 を振幅に接続 — トレモロ — しているので、エンベロープが平らに保たれず波打ちます。レートは脈打つ速さを、深さはその振れ幅を決めます。深さを 0 にすると波打ちが消え、ただの持続音になります。再生すると脈動が聴けます。これはモッドマトリクスの 1 接続で、同じ LFO をピッチに向ければビブラート、カットオフに向ければフィルターのうねりになります。

レート
6 Hz
深さ
0.6

ベロシティとキートラッキング

2 つのモジュレーション源は、シンセ自体ではなくどう弾くかから来ます。

  • ベロシティ — キーをどれだけ強く叩いたかで、0〜127 の数値で送られます(MIDI の基礎 を参照)。ベロシティを音量へ配線すると弱打は小さく強打は大きくなり、フィルターへ配線すると強打ほど明るくなって、実際に強く弾いた楽器のように振る舞います。
  • キートラッキング — どの鍵を弾いたか。弾いたピッチをフィルターカットオフへ配線すると、高音も低音と同じ明るさに保てます(これがないと、高音は倍音が固定カットオフより上に出てしまい、こもって聞こえがちです)。

モッドマトリクス

モッドマトリクスは、すべてをつなぐパッチベイです。各ルーティングは 3 つの選択からなります。

要素意味
ソース(源)動かす側LFO 1、LFO 2、アンプエンベロープ、フィルターエンベロープ、ベロシティ、キートラッキング、モッドホイール、ランダム
デスティネーション(行き先)動かされる側ピッチ(セント)、フィルターカットオフ(セント)、音量(ゲイン)、パン(位置)
デプス(深さ)どれだけ、どちら向きに大きな正のデプス = 強く上向きに押す、負 = その逆

つまり「LFO 1 → ピッチ、小さなデプス」はビブラート、「ベロシティ → カットオフ、大きなデプス」はダイナミックな明るさ、「フィルターエンベロープ → カットオフ」は定番のシンセプラックです。同じわずかな源と行き先を組み替えるだけで、膨大な表現の幅が生まれます。

libsonare での実装

NativeSynth では、モジュレーションは SynthPatch の中にあります。アンプエンベロープは ampAttackMsampDecayMsampSustainampReleaseMs、独立したフィルターエンベロープは対応する filterAttackMs / filterDecayMs / filterSustain / filterReleaseMs の組です。2 つの LFO は lfoRateHzlfo2RateHz で設定し(lfoToPitchCents は直接ビブラートを掛けるショートカット)。自由なルーティングは modRoutings にあり、{ source, destination, depth } の配列です — source'lfo1''lfo2''amp-env''filter-env''velocity''key-track''mod-wheel''random' のいずれか、destination'pitch-cents''cutoff-cents''amp-gain''pan-units' のいずれかです。空でない modRoutings はベースプリセットのマトリクスを置き換え、マトリクスは最大 8 ルーティングを保持します。

関連: 内蔵シンセサイザー(NativeSynth)シンセシスの基礎MIDI の基礎