TonicAudio / Tonic

Easy and efficient audio synthesis in C++
The Unlicense
524 stars 63 forks source link

Add basic filters #15

Closed ndonald2 closed 11 years ago

ndonald2 commented 11 years ago

For now I want to add the following filters, which are common in synths:

Both cutoff and resonance will be settable via generator inputs.

This will probably involve a few utility functions (bilinear transform, etc) and a base-class generator for an IIR biquad.

I am also considering a semi-abstract generator subclass for "effects", which may have some common features for generators that affect existing frames rather than generating frames from scratch. Probably will not do this now, but it could be useful in the future.

More filter prototypes for other common topologies to come later.

morganpackard commented 11 years ago

I created a setter macro for generators which I'll try to check in shortly. Might be nice to use that going forward if it feels good to you. -m-

On Tue, Feb 19, 2013 at 12:18 PM, Nick D. notifications@github.com wrote:

For now I will add the following filters, which are common in synths:

  • Two-pole LPF, BPF, HPF (Butterworth) with Resonance - 12 dB/octave
  • Four-pole LPF, BPF, HPF (Butterworth) with Resonance - 24 dB/octave

Both cutoff and resonance will be settable via generator inputs.

This will probably involve a few utility functions (bilinear transform, etc) and a base-class generator for an IIR biquad.

I am also considering a semi-abstract generator subclass for "effects", which may have some common features for generators that affect existing frames rather than generating frames from scratch. Probably will not do this now, but it could be useful in the future.

More filter prototypes for other common topologies to come later.

— Reply to this email directly or view it on GitHubhttps://github.com/morganpackard/Tonic/issues/15.

Morgan Packard cell: (720) 891-0122 aim: mpackardatwork twitter: @morganpackard

ndonald2 commented 11 years ago

Closing this. Will open new issue for other filter types.