Unified · Split
| @@ -232,7 +232,7 @@ extern "C" { · 231 unmodified lines | ||
| 232 | 232 | |
| 233 | 233 | //============================================================================== |
| 234 | 234 | |
| 235 | − /* State Variable Filter, algorithm from Andy Simper. */ | |
| 235 | +/* State Variable Filter, algorithm from Andy Simper. */ | |
| 236 | 236 | typedef enum SVFType |
| 237 | 237 | { |
| 238 | 238 | SVFTypeHighpass = 0, |
| @@ -240,8 +240,8 @@ extern "C" { · 1 unmodified line | ||
| 240 | 240 | SVFTypeBandpass, |
| 241 | 241 | SVFTypeNotch, |
| 242 | 242 | SVFTypePeak, |
| 243 | − SVFTypeLowShelf, | |
| 244 | − SVFTypeHighShelf | |
| 243 | + SVFTypeLowShelf, | |
| 244 | + SVFTypeHighShelf | |
| 245 | 245 | } SVFType; |
| 246 | 246 | |
| 247 | 247 | typedef struct _tSVF |
| @@ -249,7 +249,8 @@ extern "C" { · 1 unmodified line | ||
| 249 | 249 | SVFType type; |
| 250 | 250 | float cutoff, Q; |
| 251 | 251 | float ic1eq,ic2eq; |
| 252 | − float g,k,a1,a2,a3,cH,cB,cL, kAmount; | |
| 252 | + float g,k,a1,a2,a3,cH,cB,cL,cBK; | |
| 253 | + | |
| 253 | 254 | |
| 254 | 255 | } _tSVF; |
| 255 | 256 | |
| @@ -263,7 +264,7 @@ extern "C" { · 7 unmodified lines | ||
| 263 | 264 | float tSVF_tick (tSVF* const, float v0); |
| 264 | 265 | void tSVF_setFreq (tSVF* const, float freq); |
| 265 | 266 | void tSVF_setQ (tSVF* const, float Q); |
| 266 | − | |
| 267 | + void tSVF_setFreqAndQ (tSVF* const svff, float freq, float Q); | |
| 267 | 268 | //============================================================================== |
| 268 | 269 | |
| 269 | 270 | /* Efficient State Variable Filter for 14-bit control input, [0, 4096). */ |