the project contains an internal Drum Synth plugin. Its purpose is to generate synthesized drum hits, such as base drums and hats.
Sounds are generated as sums of several identical, but separately configurable, oscillators each having ADSR envelopes for volume and pitch.
The implementation is pure Python. It might seem slow, but, considering use case (generate once, use many times, as in conventional drum machine), it is actually acceptable.
Related classes:
OneShotOscillator
- models a single ADSR-controlled ocillator
DrumSynthGenerator
- a low-level generation plugin
DrumSynthGeneratorConfig
- a simple data class containing settings for a generator such as per-osciallator ADSR envelope parameters (there are 4 oscillators)
DrumSynthStrategy
- a standard hybrid processing strategy. Consumes events (such as parameter changes and notes)
DrumSynthPlugin
- a project-level abstraction to be put to audio tracks
There is a drum synth track in "Riding on bugs" demo song