Created by: Aren Akian
Last updated: Jul 30, 2024
-
Wah~ is a Pure Data (PD) external written in C, built on top of the PD “vanilla” library
-
Wah~ is a wah filter, similar to a wah-wah pedal.
-
Wah~ has a filter, with variable resonance (Q). The user controls a wah frequency "center" via the inlet
To use Wah~, you need to install the correct compiled binary for your system, in your PD externals folder.
- Mac (any 64 bit architecture): .pd_Darwin
- Linux (any 64 bit architecture): .pd_linux
- Windows (any 64 bit architecture): .dll
-
Find the location your PD externals folder
- Open PD > Preferences > Path to see the default path to your externals folder
-
Copy the "wah~" folder containing the compiled binaries and the wah~-help.pd_ files into the externals folder
Typically, the default externals path is as follows:
Scope | Path |
---|---|
Application-specific: | /$PdPath/Contents/Resources/extra (this is inside the Pd Application (like Pd-0.49-1 in ~/Applications); right click it and choose "Show Package Contents", then navigate to "Resources/extra") |
User-specific: | ~/Library/Pd (/Users/user_name/Library/Pd) |
Global: | /Library/Pd |
Scope | Path |
---|---|
Application-specific: | %ProgramFiles(x86)%\Pd\extra (for 64-bit OS and 32-bit Pd) or %ProgramFiles%\Pd\extra; this is inside the Pd Application (usually in C:\Program Files). This folder needs to be set to writeable. |
User-specific: | %AppData%\Pd (usually in C:\Users\user_name\AppData\Roaming\Pd). |
Global: | %CommonProgramFiles%\Pd (usually in C:\Program Files\Common Files\Pd). |
Scope | Path |
---|---|
Application-specific: | /usr/lib/pd/extra if installed via a package manager (apt-get) or /usr/local/lib/pd/extra if compiled by yourself. |
User-specific: | ~/.local/lib/pd/extra (preferred since version Pd-0.47-1) or ~/pd-externals (deprecated but still usable). |
Global: | /usr/local/lib/pd-externals. |
In most cases, the “User-Specific” path is reccomended.
- If unsure, you can add a search path to your custom install location.
- Open a PD project
- Inside the patcher, create a new object (⇧⌘ + 1 or ⇧Ctl + 1)
- type in "wah~ "
- Follow the steps above to create a wah~ object. Connect the outlet to a dac~ or other outlet for further processing
- Connect an audio signal to the first inlet
- Then send frequency values (as number atoms) to the first inlet to set the frequency "center" of the wah~
- modulate this value to for wah-wah like effects
- Set the filter resonance to desired value (0 - 0.9)
- For examples or further help, open “wah~-help.pd” included in this repo.
Info: Inlet 1 accepts an audio~ input, and frequency atom input, corresponding to the center frequency of the wah~ filter
Arguments:
- Frequency~ - the frequency of the root note
- Tip: use an mtof object to send frequency values into a sig~ object, then connect the sig~ outlet to the first inlet of houscil~ (like in the houscil~-help.pd file)
Info: Inlet 2 accepts atom values, corresponding to the amount of 7th chord harmonics added to the root tone
Arguments:
- harmonicAmt - The amount of harmonics to be added (0-100)
If the external does not run in PD, or causes any issues, you may need to recompile the included source code for your system. I recommend using pd-lib-builder
- PD Docs: Externals
- pd-lib-builder
- Designing Audio Objects for Max/MSP and Pd by Eric Lyon