- https://vicanek.de/articles/BiquadFits.pdf
- https://github.com/larzeitlin/MassbergLPF
I prepared this filter as suggested in above sources using Octave. Got it working otherwise but something was wrong with Q values in range >sqrt(0.5) and ~2.0. Here are few plots showing what happened:
https://i.stack.imgur.com/S7EOf.png
https://i.stack.imgur.com/ng7h0.png
https://i.stack.imgur.com/sfebm.png
Later I found the W. Pirkle book Designing Audio Effect Plug-Ins in C++ implementation and correction documentation for it :
http://www.willpirkle.com/wp-content/up ... ection.jpg
but, somehow it didn't work correctly either. So, went back to
Code: Select all
if Q > sqrt(5)
https://i.stack.imgur.com/dBK64.png
but, is it OK? because of the book correction info states:
Has anyone implemented this filter with success by just following either those two sources I mention or the W. Prikle book or correction code?There is an error in the calculation of the g1, gz and gp coefficients for the Massberg LPF, second order only. There is also an error in the check for Q, it should reference the square root of 0.5, not 5.0.