PySchaeffer provides a set of Python 3 functions for sound generation.
In order to Keep It as Simple and Stupid as possible :
- No library is needed.
- No real time.
- Sampling rate is fixed to 44100Hz.
- No stereo
- All durations are in ms.
- Sounds are represented by Python
list
s offloat
numbers (between-1.0
and1.0
)
- Silence, white noise, sine, PWM
- Additive synthesis
- Frequency Modulation : phasor, sine, wavetable
- Karplus-Strong, DTMF, Morse code
- Amplification, shift, normalisation, envelope, ADSR
- IIR Filters, including designs for Bandpass, Hi/Lo-pass, Hi-Lo-shelf
- Freeverb and associated filters (filtered feedback comb filters, ...)
- Convolution : naive and fast (FFT based)
- Variable (interpolated) delay, Speed change
- Discrete Cosine Transform
- Fast Fourier Transform (and inverse)
- Filter frequency response
- Envelope detector
- Formant filters (presets).
- Basic Text-to-Speech using diphones.
- MIDI input
- WAV input/output