https://github.com/annaobara/buchla-259-wavefolder
MATLAB implementation of the Buchla 259 wavefolder with anti-aliasing techniques using polyBLAMP
https://github.com/annaobara/buchla-259-wavefolder
anti-aliasing audio-dsp buchla matlab polyblamp signal-processing synthesis wavefolder
Last synced: 3 months ago
JSON representation
MATLAB implementation of the Buchla 259 wavefolder with anti-aliasing techniques using polyBLAMP
- Host: GitHub
- URL: https://github.com/annaobara/buchla-259-wavefolder
- Owner: annaobara
- License: mit
- Created: 2025-03-11T14:11:09.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-27T16:31:21.000Z (about 1 year ago)
- Last Synced: 2025-03-27T17:32:07.788Z (about 1 year ago)
- Topics: anti-aliasing, audio-dsp, buchla, matlab, polyblamp, signal-processing, synthesis, wavefolder
- Language: MATLAB
- Homepage:
- Size: 553 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Virtual Buchla 259 Wavefolder - Digital Modeling and DSP Implementation
This project digitally models the **Buchla 259 Wavefolder**, a nonlinear waveshaping circuit used in **West Coast synthesis**. The implementation focuses on **real-time DSP processing** while mitigating aliasing artifacts using the **polyBLAMP (band-limited ramp) technique**.
This work is based on **virtual analog modeling** principles and was developed in **MATLAB**.
---
## Project Overview
The **Buchla 259 Wavefolder** is an essential component of West Coast synthesis, known for its **nonlinear wavefolding** that introduces rich harmonic content. This project aims to:
- **Digitally model** the Buchla 259 circuit while preserving its timbral characteristics
- **Analyze the spectral response** and minimize aliasing artifacts
- **Implement polyBLAMP** as an efficient anti-aliasing technique
- **Evaluate the digital model** against theoretical benchmarks and analog simulations
---
## Features
- MATLAB-based real-time signal processing
- Anti-aliasing using **polyBLAMP** (Polynomial Band-Limited Step)
- Nonlinear folding via memoryless functions
- Resistor-weighted voltage summation
- Spectral validation via FFT and spectrograms
- Designed for use in virtual modular synthesis and software synthesizers
---
## Techniques Used
- Memoryless nonlinear shaping functions based on the methodology of **Esqueda et al. (DAFx-17)**
- Resistor network emulation with precomputed scalar coefficients
- Fractional delay analysis for sample-accurate alias suppression
- Symmetrical inverse clipping
- Global signal summation with dynamic scaling
---
## Installation
1. **Clone the repository**:
```bash
git clone https://github.com/annaobara/Buchla-259-Wavefolder.git
cd Buchla-259-Wavefolder
---
## Repository Structure
```
๐ docs/ โ Final project report (PDF)
๐ src/ โ MATLAB implementation files
๐ images/ โ Output figures (spectrograms, waveform plots)
๐ tests/ โ Example/test scripts
๐ examples/ โ Audio demos
```
---
## Spectral Analysis
The model was tested with sinusoidal inputs. Results showed significantly reduced aliasing and preserved harmonic structures when compared to uncorrected models.
> 
---
## Requirements
- MATLAB R2022b or later
- Signal Processing Toolbox
---
## License
Licensed under the MIT License. See [`LICENSE`](LICENSE) for details.
---
## Documentation
[Read full project report](docs/DSP_2024_fall.pdf)
---
## Reference
Esqueda, F., Pรถntynen, H., Vรคlimรคki, V., & Parker, J. D. (2017). *Virtual Analog Buchla 259 Wavefolder*. In **Proceedings of the 20th International Conference on Digital Audio Effects (DAFx-17)**.
---
Developed by [Anna Obara](https://github.com/annaobara) โข Aalborg University, 2025