sfztools / sfizz

SFZ parser and synth c++ library, providing a JACK standalone client
https://sfz.tools/sfizz/
BSD 2-Clause "Simplified" License
418 stars 57 forks source link

Filter types brf_1p and apf_1p crashes audio engine #1043

Open MTornPDX opened 2 years ago

MTornPDX commented 2 years ago

This issue is super specific, and probably seldom actually encountered: While trying out all the filter modes, I found that brf_1p and apf_1p on high frequency settings crashes the audio engine, in Logic Pro at least.

The "sv" variants of the 2p filters are also glitchy (crackles and buzz), but it doesn't crash anything. I had assumed that they weren't yet implemented. Great work lately! All the small issues I've raised in the past have been addressed and work perfectly.

paulfd commented 2 years ago

The "sv" variants of the 2p filters are also glitchy (crackles and buzz), but it doesn't crash anything. I had assumed that they weren't yet implemented.

@jpcima added some Faust implementations of these, I'm not sure how mature they are though I never tested, but I can check it out.

While trying out all the filter modes, I found that brf_1p and apf_1p on high frequency settings crashes the audio engine, in Logic Pro at least.

We might need to clamp the cutoffs..

paulfd commented 2 years ago

In sforzando these are either unparsed (apf_1p) or basically ignored (brf_1p). In both cases the behavior is that of a lowpass filter.

Also our brf_2p has a slight skew in the effective cutoff frequency (it goes over). The brf_1p goes a bit below.

paulfd commented 2 years ago

So I moved the brf_1p to the 2p as sforzando does, and disabled the apf for now until I find a way to make it work properly. I'll keep this open to track it for later.