-
Notifications
You must be signed in to change notification settings - Fork 33
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Second order All pass "so_apf.h" might have missing frequency #5
Comments
Ok. I found some info! All pass filter is supposed to change only phase of signal keeping level of different frequencies the same. But still the abrupt bump is not right output? Or is it after all? |
For the first and second order all pass filters the meaning of Q and fc are:
For more info I could refer you to the chapter 6 (6.6.7) of this book here. All the filters in this code are derived from this book, which worth every cent. Regards. |
Yes. I understand. That is why I pointed out that in the code you publish the formal parameter names for second order all pass filter are Note the "fs" changes to "fc" like you point out. And if so then fc should be used in code instead of fs.
|
Thanks for the feedback. It's possible that there are bugs in the code and there were a couple of PRs also from other users to fix them. |
Actually, Will Pirkle issued some errata including one for the 2nd order APF (page 188), alpha is correct, but beta relies on thetac, which is not described and your code is apparently wrong there. It should read: |
@lorenzolamasse good find. I'll take a look at the errata and the book and fix any errors. Thanks! |
I can see at top comment section mentioning frequency but parameters are only for Q and samplerate(fs).
Then when I test filter it gives only abrupt bump. Happily nothing worse happens though.
I think one of those fs's must be the frequency but I don't understand much about filters math so I cannot correct the situation my self. Maybe you could kindly review the second order all pass code to clarify which is the frequency - if any.
It is this part which I feel is missing frequency parameter and corresponding code part in file so_apf.h:
tp_coeffs& calculate_coeffs(float Q, int fs)
The text was updated successfully, but these errors were encountered: