Max MSP の使用に必要な基本ツール、入出力とオシレーターの構築方法、エンベロープ システムの構築方法について説明した前の 3 つのチュートリアルをまだ理解していない場合は、このチュートリアルに従う前に完了してください。
このガイドでは、フィルター システムを作成してシンセサイザーに挿入し、特定の周波数を「カットオフ」してサウンドを整える方法を学びます。
- 続きを読む:Max MSP 初心者ガイド:モノフォニック ソフトウェア シンセサイザーの構築方法
最初のステップは、最後のチュートリアルで作成したパッチを開いて、パッチ適用を開始する前にページが正しく設定されていることを確認することです。残念ながらこれらは保存されず、Max MSP を開くたびにリセットする必要があります。ガイダンスが必要な場合は、このチュートリアル シリーズのパート 1 を参照してください。
次に、パッチに新しいサブヘッダーを作成し、「Filter」という名前を付けます。その機能により、オシレーターの右側に配置するのが最適です。
フィルター
Max MSP には多くのフィルターの選択肢とオプションが用意されていますが、モノフォニック ソフトウェア シンセサイザーの構築に役立つシンプルな多目的オブジェクトを見つけるという精神を継続するために、オブジェクト「svf~」を使用します。
この便利なオブジェクトを使用すると、ローパス フィルター、ハイパス フィルター、バンドパス フィルター、ノッチ フィルターのいずれかを選択できます。したがって、構築する必要があるのは、4 つのオプションから選択する手段と、カットオフ周波数のコントローラーだけです。
エンベロープのプリセットよりもセットアップがはるかに簡単な選択システムに進む前に、フィルターのカットオフ周波数を制御するスライダーを作成する必要があります。これは以前に使用したようなゲイン スライダーではなく、「スライダー」と呼ばれるオブジェクトです。
このオブジェクトを使用すると、信号をスケーリングするだけでなく、値の間を移動するようにスライダーを設定できます。
オブジェクトを作成したら、それを「svf~」の中央のCutoff Frequencyという名前のインレットに接続する必要があります。スライダーの値を設定する必要があります。
オブジェクトをハイライト表示し、パッチの右側にあるインスペクタを開きます。一番下までスクロールすると、範囲を希望の周波数に設定できます (ここでは 1,000 Hz に設定しています)。出力の最小値は 0、出力乗数は 1 である必要があります。
選択システム
フィルター オブジェクトとカットオフ周波数オブジェクトはパッチ内に配置されましたが、ここで個々のフィルターを選択する方法を見つけて、最終的にシンセサイザーの残りの部分に接続できるようにする必要があります。
まず、オブジェクト「selector~」が必要になります。オブジェクトのヘルプ ファイルを開くと、作成する必要があるインレットとアウトレットの数をオブジェクトに指示する必要があることがわかります。 4 つの異なるフィルターとフィルターされていないドライ信号があるため、必要なインレットは 5 つ、出力は 1 つだけです。
4 つのフィルターは「selector~」オブジェクトの最初の 4 つの入力 (インレットではない) に配線する必要があり、5 番目の入力はドライ信号用に空のままにしておきます。各インレットの機能がわからない場合は、そのインレットの上にマウスを置くと、教えてくれます。したがって、オブジェクトは次のようになります。
「selector~」の最初の 4 つの入力に接続された 4 つのフィルター セレクターに何をすべきかを伝えるためにメッセージとバンを使用する代わりに、「ラジオグループ」を使用します。 5 つのオプションから選択する方法を確立する必要があるため、これにより、どの入力を「開く」か「閉じる」かを指示する番号をセレクターに送信する選択肢のリストが提供されます。
オブジェクト「radiogroup」をパッチに配置した後、パッチ適用ウィンドウの右側にあるインスペクター ウィンドウを開きます。 「アイテム数」と表示される場所まで下にスクロールし、数字「2」を数字「5」に置き換えます。これは、4 つのフィルターとドライ信号の 5 つのオプションが必要なためです。
次に、「radiogroup」を「selector~」の最初のインレットに接続する必要があります。ただし、radiogroup がセレクターに送信している番号を確認したいため、間に「number」オブジェクトを追加する必要があります。セレクターのインレットの上にマウスを移動すると、何が開いていて何が閉じているかも表示されます。
radiogroup をいじってみると、セレクタ「1-5」ではなく「0-4」を送信していることがわかるかもしれません。これは、必要な 5 つのフィルター オプションと一致しておらず、シンセサイザーでは機能しないことを意味します。
これには簡単な修正方法があります。 radiogroup に「selector~」オブジェクトの最初の 5 つのインレットだけではなく、セレクターの 5 つの入力の中から選択させたいので、すべての数値に 1 を加算して 1 ~ 5 を読み取るように指示する必要があります。
これを行うには、ラジオグループの下、番号の上に「+1」という名前の別のオブジェクトを追加します。これが完了すると、フィルター オプションに接続されている 5 つの入力のみが選択されます。 5 番目の入力が空であることを心配する必要はありません。これは次のセクションでオシレーターに接続されます。
この時点で、パッチは次のようになります。
ラジオグループの下と番号の上に別のオブジェクト「+1」を追加した後 フィルターをパッチに接続する
ここで、フィルター オブジェクトをオシレーターと出力にフックする必要があります。
フィルター オブジェクトの性質と、オシレーターによって生成されたサウンドをフィルター オブジェクトがどのように操作するかにより、オシレーターを出力に接続する必要はなくなり、代わりにフィルターに接続する必要があります。
オシレーターをフィルター オブジェクトだけでなく選択オブジェクトにも送信する必要があります。生の信号をフィルター オプションにする必要があります。フィルタを両方のオブジェクトに接続するには 8 本のワイヤが必要になるため、送信関数と受信関数を使用してパッチ上の乱雑さを軽減します。
これらの送受信オブジェクトはルーティング システムとして機能しますが、ワイヤは必要ありません。複数の場所に信号を送信する必要がある場合に最も効果的です。
送信オブジェクトを作成するには、文字「s」の後に信号ルートに付ける名前を入力します。この場合、信号はオシレーターから送信されるため、「s Osc」と呼ばれます。これは発振器のコンセントに接続する必要があります。
次に、オブジェクトを作成し、文字「r」の後にまったく同じ信号ルート名を入力して、受信オブジェクトを作成する必要があります。したがって、「r Osc」である必要があります。これは「svf~」の入力インレットにアタッチされます。 2 番目の「r Osc」オブジェクトを作成し、「selector~」の入力 5 に接続する必要があります。
これでオシレーターがフィルターに接続されました。「selector~」のアウトレットからのワイヤーを出力の信号乗算器の右インレットに接続する必要があります。 5 つのフィルタ オプションはすべて正しく配線されており、ラジオグループの右のボタンを選択するとトリガーされるはずです。
フィルターとカットオフ周波数コントローラーが信号に対して何を行っているかを確認したい場合は、「spectroscope~」を「selector~」のアウトレットに接続できます。
これで、独自のソフトウェア シンセサイザーを構築できました。これを実際にシンセサイザーに似せて、非常に重要なプリセットを追加するには、あと 1 ステップが必要ですが、難しい作業はこれで終わりです。苦労の成果を楽しみ、満足のいくものが見つかるまですべてのコンポーネントを自由にいじってみてください。
まだ Max MSP をダウンロードしていない場合は、Cycling 74 で 4 週間の無料トライアルを提供しています。