静的コムフィルターの共振を音程に合わせる方法
静的コムフィルターを音程に合わせるには、まず音程を周波数に変換し、基本的な正帰還コムの場合は遅延時間を 1,000 ÷ 周波数(Hz) ミリ秒に設定します。A4の周波数は440 Hzなので、遅延時間は約 2.273 ms です。これは、Cycling ’74のコムフィルターのチュートリアルで説明されている、遅延時間と倍音間隔の反比例関係に基づいています。
このガイドは、選んだ音程に共振パターンを固定して合わせたいプロデューサーやサウンドデザイナー向けです。実際の作業では、遅延時間の初期値を計算し、フィードバックの極性を決め、音に適用する前に実際の出力を確認します。
何を調整するのか:共振、間隔、それともノッチ?
コムフィルターの周波数特性には、ピークと谷が繰り返し現れます。ここでは、基本的な構造が2つ関係します。フィードフォワード・コムは入力信号と遅延させた複製を合成し、フィードバック・コムは遅延した出力を再循環させます。フィードバック構造では反復音が減衰しながら続くため、共鳴する音を作りたい場合の出発点として適しています。Julius O. Smithの「Comb Filters」では、両方の構造が解説されています。
この記事では、チューニングとは最も低いゼロでない共振を目標の周波数に合わせることを指します。この定義により、曖昧さを避けられます。高いほうのピークを音程に合わせただけでは、その音程が共振パターンの基音になるとは限りません。
「静的」とは、音が鳴っている間もチューニングを固定することです。最初の設定では、エンベロープ、LFO、オートメーション、キーボードトラッキングなど、遅延やピッチの変調を無効にします。使用できる場合は、固定音程モードが便利です。たとえばMassive Xの Fix モードでは、入力MIDIのピッチとは独立してコムのチューニングを設定できます。Massive Xマニュアル:フィルター
音程を遅延時間に変換する方法
まず音程、オクターブ、基準チューニングを選びます。A4を440 Hzとする12平均律では、周波数は次の式で求められます。
[ f_0=440\times2^{(n-69)/12} ]
ここで、(n) はMIDIノート番号です。A4は69、中央のCは60です。Inspired Acousticsの音程と周波数の一覧には、この式と対応する表が掲載されています。
基本的な正帰還コムでは、次の式で計算します。
[ T_{\text{ms}}=\frac{1000}{f_0} ]
利用可能な周波数範囲内で、共振は (f_0,2f_0,3f_0,\ldots) に現れます。Cycling ’74の例では、遅延時間を2 msにすると、500 Hz間隔になります。MSP Delay Tutorial 6: Comb Filter
次の値は、A4 = 440 Hzとしてこれらの式から計算したものです。負帰還の列では最も低い共振を同じ目標音程に合わせています。遅延時間が短くなる理由は次の節で説明します。
| 目標音程 | 周波数 | 正帰還の遅延時間 | 負帰還の遅延時間 |
|---|---|---|---|
| A2 | 110.000 Hz | 9.091 ms | 4.545 ms |
| C3 | 130.813 Hz | 7.645 ms | 3.822 ms |
| A3 | 220.000 Hz | 4.545 ms | 2.273 ms |
| C4 | 261.626 Hz | 3.822 ms | 1.911 ms |
| A4 | 440.000 Hz | 2.273 ms | 1.136 ms |
| C5 | 523.251 Hz | 1.911 ms | 0.956 ms |
実際の基準チューニングに合った周波数を使ってください。また、コントロールの単位も確認しましょう。2.273ミリ秒は0.002273秒です。機器で音程や周波数を直接指定できる場合は、そのコントロールを使い、ミリ秒に換算する手間をかけずにスペクトルを確認してください。
フィードバックの極性で答えが変わる理由
ここで扱う基本モデルでは、フィードバックを (y[n]=x[n]+g,y[n-M]) と定義します。(g) が正の場合、共振は遅延時間の逆数の整数倍に現れます。(g) が負の場合は、それぞれの位置の中間に移動します。この極性による配置の違いは、Smithによるコムフィルターの解析で導出されています。
秒単位で表すと、2つのパターンは次のとおりです。
- 正帰還: (f_k=k/T)。最初のゼロでないピークは (1/T) に現れます。
- 負帰還: (f_k=(2k+1)/(2T))。最初のピークは (1/(2T)) に現れます。
したがって、負帰還では次の遅延時間が必要です。
[ T_{\text{ms}}=\frac{500}{f_0} ]
A4の設定例では、正帰還で遅延時間を2.273 msにすると、ピークは約440、880、1,320 Hzに現れます。遅延時間を変えずに負帰還へ切り替えると、ピークは約220、660、1,100 Hzに移動します。負帰還の遅延時間を1.136 msに短縮すると、ピークは約440、1,320、2,200 Hzに現れます。
実際の使い分けは、完全な整数次倍音列にするなら正帰還、選んだ基音の奇数倍にするなら負帰還です。Massive Xのマニュアルでも、フィードバック極性のコントロールについて、全倍音と奇数倍音の違いが説明されています。Massive Xマニュアル:コム
ノブのプラス/マイナス表示を解釈する前に、マニュアルで符号の規約を確認してください。また、極性スイッチがどの信号を反転させるのかも確認しましょう。外部のウェット信号の極性を変えることと、フィードバックループの極性を変えることは別の操作です。
共振の設定と確認方法
次の手順で、音源の性質とチューニングを切り分けます。必要なものは、コムフィルターまたは短い遅延を使うプロセッサー、テスト用の音源、そして目標付近のピークを個別に表示できるスペクトラムアナライザーです。
- シンプルな設定にする。 遅延の変調、テンポ同期、ピッチトラッキングを無効にします。可能であれば、追加の分散処理やオールパス処理をバイパスします。
- フィードバックの極性を選ぶ。 上記の適切な遅延時間の式を使います。
- 計算した遅延時間を入力する。 まずフィードバックを中程度に設定し、共振パターンが見える程度まで上げます。
- 広帯域の素材で試す。 ノイズまたは短い広帯域バーストを使います。ドライ信号を並列に加える前に、処理後の出力だけを確認します。
- 最も低いピークが意図どおりか確認する。 その周波数と、隣接する少なくとも2つのピークを想定される倍音列と照らし合わせます。
- 遅延時間を微調整する。 ほかのコントロールを固定したまま、調整のたびにテストを繰り返します。
Cycling ’74は、テスト音源としてホワイトノイズと倍音の豊富なパルスを使い、入力に多くの周波数が含まれているとフィルタリングを観察しやすいと説明しています。音楽用の音源を試す前に広帯域の素材を使えば、診断に役立ちます。Cycling ’74:コムフィルターを試す
正帰還でA4に合わせる場合は、440、880、1,320 Hz付近にピークがあるか確認します。440 Hz付近にピークが1つあるだけでは十分な確認になりません。より低い音程に合わせた共振パターンの高次共振である可能性があります。隣接するピークも調べれば、チューニングと極性の解釈をどちらも確認できます。
バーストの後の減衰音を測定する場合は、減衰音が見える程度のフィードバックを設定します。理想的なフィードバックモデルでは、フィードバック量の絶対値が1未満なら応答は減衰します。機器に表示される割合と内部係数の正確な関係は、実装によって異なります。Smith:フィードバック・コムフィルター
計算した遅延時間で少し音程がずれる場合
まず、遅延コントロールの分解能を確認します。サンプルレートを (f_s) とすると、正帰還の理想的な遅延サンプル数は次のとおりです。
[ M=\frac{f_s}{f_0} ]
A4を48 kHzで処理する例では、これは109.0909サンプルです。整数サンプルしか扱えない遅延では、この値を正確に表せません。
(f=f_s/M) から計算すると、109サンプルでは約440.367 Hzとなり、約1.44セント高くなります。110サンプルでは約436.364 Hzとなり、約14.37セント低くなります。ミリ秒の表示が細かくても、それだけではプロセッサーの実効的なチューニング分解能はわかりません。
分数遅延処理を使うと、整数サンプル位置の間の遅延を表せます。補間方式によって振幅特性や位相特性は異なります。Smithは、フィードバックループ内での補間方式について詳しく論じています。「Delay-Line and Signal Interpolation」
遅延時間にほぼ反比例するプロセッサーでは、実測値に基づいて次のように補正できます。
[ T_{\text{new}}\approx T_{\text{old}}\times\frac{f_{\text{measured}}}{f_{\text{target}}} ]
たとえば、仮定上の測定で、2.30 msのときに435 Hzのピークが見つかり、目標が440 Hzだとします。補正後の初期値は (2.30\times435/440\approx2.274) ms です。これは計算例であり、製品の実測結果ではありません。設定後に再度テストしてください。コントロールが音程からのずれを指定する方式なら、実測ピークに合わせて微調整コントロールを調整します。
ダンピングや分散処理で再調整が必要になる理由
プロセッサーには、遅延時間とフィードバックゲイン以外の処理が含まれる場合があります。Nonlinear LabsのC15のドキュメントによると、コムフィルターのフィードバック経路にはオールパスフィルターとローパスフィルターの両方があります。オールパスフィルターは周波数によって位相を変えるため、周波数ごとに異なる追加の遅延として働きます。C15ユーザーマニュアル:コムフィルター
そのため、逆数と遅延時間の関係を示す式は、より複雑な共振器では出発点になります。まずシンプルな設定でチューニングし、必要な分散処理を加えてから再度測定します。ピークが整数倍の列から外れた場合は、すべてのピークを合わせようとせず、どの共振を音程に固定したいのかを決めてください。
ダンピングも減衰音のバランスを変えます。Smithが説明するローパス・フィードバックモデルでは、高い周波数ほど低い周波数より速く減衰します。「Lowpass-Feedback Comb Filter」
最後のチューニング確認を行う前に、ダンピングとフィードバックの最終設定を済ませてください。部分音の間隔を意図的に不均等にした場合は、その設定を「音程に固定した選択共振」と表現しましょう。スペクトル全体がその音程の倍音列を成さない場合があります。
音楽用の音源がまだ意図した音にならない場合に確認すること
テスト信号で想定どおりのピークが確認できたら、音源を戻し、観察結果に応じて残る問題を調べます。
| 観察結果 | 次の確認項目 |
|---|---|
| 音程が1オクターブ低く聞こえる | フィードバックの極性と最も低い共振を再確認します。 |
| 再生中に共振パターンが動く | 遅延の変調、ピッチエンベロープ、オートメーション、キーボードトラッキングを確認します。 |
| ノイズではチューニングを確認できるが、音源ではほとんど共鳴しない | 音源が意図した共振周波数付近のエネルギーを含んでいるか確認します。 |
| 音色を調整するとチューニングが変わる | フィードバック経路のフィルターと分散処理を再確認します。 |
| 遅延時間を少し変えるだけで目標を飛び越える | パラメーターの分解能と分数遅延への対応を確認します。 |
音源のエネルギーを確認するのは、通常のフィルタリングの性質によるものです。線形コムフィルターは、入力された周波数を整形します。周波数成分が少ない入力では、特性の一部しか確認できない場合があります。Cycling ’74が多くの部分音を含む音源を勧めているのは、この確認に特に役立ちます。MSP Delay Tutorial 6: Comb Filter
最後に信号経路を確認し、音程、基準周波数、フィードバックの極性、遅延時間、関連する音色設定をまとめて保存します。確認済みの静的チューニングとは、コントロールが固定され、共振パターンが選んだ目標に一致している状態です。遅延時間を計算し、複数のピークを確認したうえで、実際の音とフィードバック経路の設定を反映して最終調整してください。
参考資料
- 「Comb Filters」— Julius O. Smith、『Physical Audio Signal Processing』
- 「MSP Delay Tutorial 6: Comb Filter」— Cycling ’74ドキュメント
- 「Filter」— Native Instruments、『Massive X Manual』
- 「MIDI note numbers and center frequencies」— Inspired Acoustics
- 「Delay-Line and Signal Interpolation」— Julius O. Smith、『Physical Audio Signal Processing』
- 「Comb Filter」— Nonlinear Labs、『C15 User Manual』
- 「Lowpass-Feedback Comb Filter」— Julius O. Smith、『Physical Audio Signal Processing』
