Skip to content
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

start porting pd-mkmr filters for signal rate modulation of filter coefficients #9

Open
wants to merge 3 commits into
base: develop
Choose a base branch
from

Conversation

dromer
Copy link
Contributor

@dromer dromer commented Apr 1, 2024

Still need to do allpass (missing from pd-mkmr) and need a better solution for [expr~ sine($v1)] since it seems that [-~ 0.25] - [cos~] blows up with certain frequencies.

@dromer dromer marked this pull request as draft April 1, 2024 12:06
@MikeMorenoDSP
Copy link
Contributor

I found the issue, we need to delete the *~ 2pi multiplication from the filter coefficients since cos~ is a cosine wavetable reader which takes inputs from -1 to 1, while expr~ cos($v1) takes inputs in radians.

@dromer
Copy link
Contributor Author

dromer commented Apr 10, 2024

Good catch! :D

@dromer dromer marked this pull request as ready for review April 10, 2024 22:16
@dromer
Copy link
Contributor Author

dromer commented Apr 13, 2024

So we see some minute differences in filter response going into low frequencies, which was already observed years ago: https://patchstorage.com/question/pitch-difference-in-biquad-filters-without-expr/

The solution proposed there uses a wavetable to construct the (co)sine, however this would make any patches using these filters incredibly large (and would likely not even fit on a target like Daisy).

For now I'm very hesitant to merge this, as this feature would also prevent the user from initializing the filters using static arguments. So we see breaking changes on different fronts, which is not good.

Maybe we should first get expr~ working in hvcc: Wasted-Audio/hvcc#21
And then have a more proper implementation for the (co)sine functions in there.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants