PM.Chamberlin~ is a Chamberlin state-variable filter.  It contains two extra modes (peak and notch), and is over-sampled so it supports cutoff frequencies over up to roughly 80% of the Nyquist frequency.
    The cutoff can be specified in MIDI or frequency values, and the filter can self-oscillate.  The filter has a built-in saturation.  The volume of the self-oscillation is fixed, so pre-and-post gain can be used to adjust the mix of the resonant peak.
    This release is only for Mac, and the SDK was for 10.5, so it may not work on 10.4 machines.  I don't have Windows, but if anyone is interested in using this on Windows please contact me and we'll see what we can do.
    Tool Files
    • PM.Chamberlin~

    • Aug 03 2011 | 6:17 am
      Peter, this is awesome. I'd be happy to help compile for Windows if you're willing to make the source available.
    • Aug 17 2011 | 1:25 am
      thanks, sweet filter...
    • Mar 16 2012 | 2:57 pm
      Ya real nice Peter - thanks very much - lovely harmonic resonances from it.
    • Oct 04 2013 | 11:16 pm
      Hello Peter,
      First, thanks for sharing your knowledge and work. And ... I love you other filters!
      I'm trying to use Chamberlin in a M4L patch. I have this error: "no suitable architecture found". I use M4L with MAX 6.1 64 bits on a MAC OSX 10.7 - 64 bits. I do think it is connected to the 64 bits architecture, as I already had the same issue with some externals. I got Xcode and know how to compile ;).
      - Can you compile it for 64 bits or share me a repo I can pull from? - Does it worth translating it with gen?
      Thanks for your work, I'm having fun with the ladder filter you made with gen right now :).
    • Oct 05 2013 | 2:44 am
      Will have to do some digging, but I think I have it somewhere. Could also be ported to gen~.
    • Oct 05 2013 | 5:30 pm
      Found it. I think this may have been my first C object for Max, so it's not super the license indicates, most of the DSP code is from ICST.
      The frequency calculations I put in probably only work for 44.1kHz; it's worth checking. I did a linear fit for that using empirical observations. (meaning I tried values (in comparison with cycle~), wrote them down, plotted them, and ended up just doing slope-intercept)
      I've tried replacing the tuning with a lookup, but there's definitely accuracy issues if you do that, and I wanted to be able to use it as an oscillator, too, so I kept their code. I added comments to make what (or at least what I thought) was going on clearer.
      It'd be great to see this in gen~, though if you want to compile it, that's totally cool as well.
    • May 01 2014 | 3:52 pm
      Hi, thanks for sharing sources, Here is an OSX version of the object with 64bit support :