PureDataプログラミング。 パート1

いくつかの追加と用語



前の記事で、基本的な数学的演算子と出会い、記憶にあるデジタルサウンド構成の原則を更新しました。 また、PureDataの接続の本質は、メッセージ、信号、パルスの送信であることを指摘しました。 ここで、1つのポイントを明確にする価値があります。実際、勢いはコミュニケーションの特別な場合です。 運動量の転送とは、ユニットの転送を意味します。これを確認するには、[bang]とnumberBoxを接続して、何が起こるかを確認します。 文献で使用されている一般に受け入れられている用語とライブラリのリファレンスによると、数値メッセージはスカラーと呼ばれ、信号はベクトルと呼ばれます。

おそらく私もそれに固執するでしょう。 始めましょう。



信号と信号オブジェクト



信号は、オーディオデバイスへの出力を目的としたデータです。 ご想像のとおり、信号オブジェクトは信号を生成および処理するためのツールです。

PureDataでは、信号オブジェクトは[〜]接尾辞で定義されます(例:[osc〜]、[phazor〜]、[+〜])。 また、コードでは、信号を送受信する入力と出力、および対応する接続​​が強調表示されています。 信号出力をスカラーに接続することはできません。まれな例外を除き、その逆も同様です。 これらのオブジェクトをよりよく理解しましょう。



最もシンプルなシンセサイザーと最初のGUI



パッチで非常に頻繁に使用され、それなしではジェネレーターが実行できないオブジェクト- [osc〜] 左の入力では、周波数の値を取ります。 強調表示されているという事実にもかかわらず、ここで数字を渡すことはかなり可能です。 ただし、サウンドは聞こえなくなります。そのため、サウンドカードに信号を送信する必要があります。 出力は[dac〜]オブジェクトによって設定されます。 十分な音量になるため、音を静かにします。 左の入力はそれぞれ左チャンネル、右、右です。 最もシンプルなシンセサイザーを入手しました。







ここで簡単な数学をねじ込みます。 まず、ボリュームコントロールを接続します。 式y = A * sin(x)に基づいて、振幅の変化は乗算演算を使用して達成できると結論付けることができます。 これを行うには、信号に特定の数を掛けるだけです。 これを行うには、オブジェクト[*〜]を使用します。 波のすべての算術演算は、スカラー演算子の記号に接尾辞「〜」を追加することで取得できます 。 次に、オシレーターを乗算オブジェクトに接続し、numberBoxを追加して、間隔[0、1]に制限します。これは、プロパティを使用して実行できます。 乗算の結果を出力に送信し、パッチをブロックします。 そして、シフトを押したまま、マウスをnumberBox'eにドラッグします。







動作しますが、不快です。 したがって、代替案を見つけます。



オブジェクト[vslider]および[knob]を作成しましょう。 美人? 美人 フェーダーとポテンショメーターを持つことは、数字の箱よりもはるかに実用的です。 [0、1]の「プロパティ」で制限します。 そして、nuberBoxの代わりに最初のオブジェクトを接続してから、別のオブジェクトに接続してみてください。







ご覧のとおり、大きな違いはなく、使用するものはあなたの好みと欲求にのみ依存します。



次のレッスンでは、加算合成に焦点を当て、エンベロープを操作します。



All Articles