The filter frequency cannot change faster than -2 oct/AMY_BLOCK to avoid filter state glitches. See #126.
Verified that this results in sane behavior of the new test.py:TestFilterReleaseGlitch, which gave a clipping transient before this change.
Top is pre-change, front is post-change. There's still a small transient, but it's not objectionable.
Because the allowed slew rate is so large, none of the other tests are affected. Some Juno voices certainly hit this limit, but I think they are only improved. I quickly ran through them to check nothing was suddenly broken.
The filter frequency cannot change faster than -2 oct/AMY_BLOCK to avoid filter state glitches. See #126.
Verified that this results in sane behavior of the new
test.py:TestFilterReleaseGlitch
, which gave a clipping transient before this change.Top is pre-change, front is post-change. There's still a small transient, but it's not objectionable.
Because the allowed slew rate is so large, none of the other tests are affected. Some Juno voices certainly hit this limit, but I think they are only improved. I quickly ran through them to check nothing was suddenly broken.