オートワウ(Pure Data パッチ)

[env~](エンベロープフォロワー)を使って音量データを取得し、それに応じてバンドパスフィルター(BPF)の中心周波数が変わるようにすれば、オートワウ(エンベロープフィルター)となります。中心周波数を揺らす場合のBPFは[vcf~]を使いますが、Q値が基本的に固定値となります。ペダルワウは中心周波数が高い時(ペダルを閉じたとき)Q値が小さくなりますが、そこまで再現しなくてもワウっぽい音にはなるようです。
03p_204_1awah.pngこのパッチをダウンロード
rangeコントロールは、中心周波数が最高(2200Hz)になる時と最低(440Hz)になる時の音量差を調整します。rangeが小さい方が、音量減衰時に周波数の変化が急(速くこもる)ということになります。

滑らかに中心周波数を変化させるため、周波数と変化にかける時間の数値を[pack]でまとめて[line~]に送ります。[env~ 1024]からは512サンプルごとに数値が出力されるため、変化にかける時間は、512÷44100で約12msという計算となります(44100サンプル時)。

LFOやタップテンポを入れ、周期的にワウをかけることも可能です。ただデジタルだからといって多機能にしすぎると、CPU負荷の問題が出てくるかもしれないので、シンプルな構成にしています。

タグ : PureData オートワウ 

フェイザー(Pure Data パッチ)

Pure Data(Pd)でのオールパスフィルター(APF)は[rzero_rev~]と[rpole~]を組み合わせて作ります。原音とAPFを通した音を足せばフェイザーとなります。参考ページ→Making and using all-pass filters
03p_203_1phaser.pngこのパッチをダウンロード
[rzero_rev~]と[rpole~]に入れる係数計算は、1次ローパスフィルターのときの[rpole~]用計算式をそのまま使うとうまくいきました。上側の[expr~]が2π*fc/fsの計算ですが、周波数はMXR Phase 90を参考に150~2250Hzで変化するようにしています。

Uni-Vibeもフェイザーと似た仕組みなので再現できそうなのですが、いまいち係数の設定がうまくいきませんでした。今後使いたくなったときに作るかもしれません。



【フィードバックについて】

Phase 90ではAPF最終段から2段目にフィードバックがかかっていますが、Pdで同じことをやろうとすると、「error: DSP loop detected」と出てしまいます。このエラーを回避するには、[send~][receive~]を使い1ブロックサイズ分遅延を発生させます。参考ページ→What's A "DSP-Loop"?

今回のフェイザーでは上記の方法だと出音がアナログの場合とは違うように感じたので、結局フィードバックは入れないことにしました。[block~]でブロックサイズを減らし遅延を少なくする方法もありますが、CPU負荷を考えると現実的ではないと思います。

タグ : PureData フェイザー 

ビブラート/コーラス(Pure Data パッチ)

ディレイの時には[delread~]からディレイ音を出力させましたが、ディレイタイムを連続的に変化させる場合は、[vd~](variable delay)を使います。LFOで周期的にディレイタイムを変化させると、ディレイ音の音程が揺れてビブラートがかかり、原音とビブラート音を足せばコーラスとなります。
03p_202_1chorus.pngこのパッチをダウンロード
LFOの出力はトレモロの時と同じ三角波ですが、abs関数を使うと簡単になると気づいて式を変更しました。出力範囲は0~1で、[*~ ]により振幅が調整されます。[+~ 3]を入れているのは、[vd~]の最短ディレイタイムが64サンプル分(44100サンプリング時1.5ms)となっているためで、一応余裕をみて3ms足しています。

ビブラート音をフィードバックさせればフランジャーとなりますが、いまいち数値の調整がうまくいきませんでした。今後使いたくなったときに作るかもしれません。



【depth計算について】

通常のコーラスエフェクターは、揺れのスピードを遅くすると効きが浅くなります。今回のdepthコントロールでは音程を変える幅が設定され(いわゆるデチューン機能)、rateを変更しても効果が変わらないようにしました。具体的には、最大で約25centピッチが変化するように調整しています。

詳しい原理は省くとして、例えば1000Hzの信号に可変ディレイをかけるとします。1秒間かけて徐々にディレイタイムを0から100msに変化させたとき、ディレイ音は100Hzズレて900Hzの音になります。同様に、0.5秒間かけてディレイタイムを0から25msへ変化させたとき、ディレイ音は50Hzズレて950Hzとなります。このように、比例計算によって周波数の変化幅を調節できます。

タグ : PureData ビブラート コーラス 

LFO/トレモロ(Pure Data パッチ)

Pure Data(Pd)では、[osc~]で余弦波、[phasor~]でノコギリ波を発生させることができます。[cos~]はコサインを計算しますが、[phasor~]と組み合わせて余弦波を発生させるために使う場合があります。[phasor~]は0から1へ上がる形なので、-1をかければ0から-1へ下がる形になります。
03p_201_1wave.png

<三角波(Triangle Wave)>
エフェクターに使われるLFO(Low Frequency Oscillator)は三角波が多いようです。Pdでは[phasor~]等を組み合わせることになります。
03p_201_2tri.png
3パターン示していますが、結局[expr~]が一番楽な気がします。

<矩形波(Square Wave)>
あまり使わなさそうですが、一応3パターン示しています。
03p_201_3squ.png



三角波を使い普通のトレモロを作りました。waveコントロールは、三角波を増幅してクリップすることで矩形波へと近づける仕組みになっています。
03p_201_4trem.pngこのパッチをダウンロード
三角波は直線的な数値変化ですが、[dbtorms~]を入れることで指数的な倍率変化による音量操作となるようにしています。

タグ : PureData トレモロ 

タップテンポ付ディレイ(Pure Data パッチ)

Pure Data(Pd)でのディレイは、[delwrite~]に信号を入力し、[delread~]から指定した時間遅延後出力させるというものです。リピートさせるには、ディレイ音を再び[delwrite~]に入力します。青枠内はタップテンポ入力[pd tap]の中身です。
03p_199_1delay.png
このパッチをダウンロード

とりあえず適当に[hip~][lop~]を入れてディレイ音を劣化させています。また、入力部分の[spigot~]だけでエフェクトオフにした場合、ディレイ音が消えずに出力される(いわゆる「テイル」機能)ので、出力部分にも[spigot~]を入れてエフェクトオフ時ディレイ音を出力しないようにしています。

TAPをクリックすることでタップテンポ入力ができます。リズムはdivisionのラジオボタンで4分音符、付点8分音符、8分音符を選べます。



【 [pd tap]について 】

<使い方>
TAPのbangを2回以上クリックすると、そのクリック間隔時間の平均がディレイタイムとして設定されます。5回以上クリックすると、最新4回クリック分の間隔時間のみ反映されます。前回のクリックから2秒間クリックしなかった場合、自動的にテンポ入力終了となります。

<解説>
[delay]はbangが入ってから遅延時間内にまたbangが入ってくると、待機していたbang出力がキャンセルされる仕様になっています。TAPクリック毎に右上の[delay 2000]にbangが入りますが、2秒間bangが途切れたときのみリセット信号[s reset]が発生するということになります。

1回目のTAPクリック時、[timer]から出力される数値は全ての[spigot]でせき止められているので何も変化はありません。2回目のクリック時は左側の[spigot]を通過してt1にクリック間隔時間が入り、同様に3回目クリック時はt2、4回目クリック時はt3に時間が入ります。4回目クリック後上側のカウンターが1に戻り、5回目クリック以降は繰り返しになります。そしてt1~t3を足し合わせた数を3で割り、平均値を算出します。

右側のカウンターは2回目と3回目クリック時の計算のためのものです。2回クリック時はt1を1で割り、3回クリック時はt1+t2を2で割るようになっています。

タグ : PureData ディレイ 

管理人

管理人

自己紹介のページ
記事一覧
Twitter
GitHub

ブログ内検索
カテゴリー
タグ

自作エフェクター   レイアウト   回路図   歪み   PureData   周波数特性   波形・倍音   マイコン   RaspberryPi   エレキギター   アンプ   エフェクター自作方法   歪率   エレキベース   真空管   コーラス   ピックアップ   静音ギター   ヘッドフォンアンプ   擬似ギター出力   市販エフェクター   アコースティックギター   ブースター   コンデンサ   ソロギター   ポールピース   イコライザー   コンプレッサー   ビブラート   フェイザー   トレモロ   TAB譜   ディレイ   DIY_Layout_Creator   ワウ   オートワウ   バッファー   

最近の記事
最新コメント
Twitter
RSS
メールフォーム
当ブログに関するお問い合わせはこちらからお願いします。 ※FAQ(よくある質問)もお読みください。

お名前
メールアドレス
件名
本文

アクセスカウンター