From c042b0c7c68a1ce6aea3f853c14fbfd68c95dbe0 Mon Sep 17 00:00:00 2001 From: Steve Daulton Date: Tue, 16 Aug 2016 20:53:50 +0100 Subject: [PATCH] Fixed table size for soft clip Limiter Fixes exceeding max table size at high sample rates. --- plug-ins/limiter.ny | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/plug-ins/limiter.ny b/plug-ins/limiter.ny index 4d0d2a655..a9d6e5ee2 100644 --- a/plug-ins/limiter.ny +++ b/plug-ins/limiter.ny @@ -86,20 +86,21 @@ (defun soft-clip-table () "Lookup table for soft clipping wave-shaper" (abs-env - (Control-srate-abs *sound-srate* - (let* ((knee (- 1 (/ 1.0 pi))) - (kcurve (mult knee (osc (hz-to-step (/ (* 4 knee))) knee))) - (ikcurve (mult knee (osc (hz-to-step (/ (* 4 knee))) knee *sine-table* -90))) - (lin (pwlv -0.5 knee -0.5 - (+ knee (/ 2.0 pi)) 0.5 - 2.0 0.5 - 2.0 (+ 0.5 knee) - 2.1 (+ 0.5 knee)))) - (mult (/ 2.0 pi) - (sim - (at-abs 0 (cue ikcurve)) - (at-abs 0 (cue lin)) - (at-abs (+ knee (/ 2.0 pi)) (cue kcurve)))))))) + (sound-srate-abs 44100 + (Control-srate-abs 44100 + (let* ((knee (- 1 (/ 1.0 pi))) + (kcurve (mult knee (osc (hz-to-step (/ (* 4 knee))) knee))) + (ikcurve (mult knee (osc (hz-to-step (/ (* 4 knee))) knee *sine-table* -90))) + (lin (pwlv -0.5 knee -0.5 + (+ knee (/ 2.0 pi)) 0.5 + 2.0 0.5 + 2.0 (+ 0.5 knee) + 2.1 (+ 0.5 knee)))) + (mult (/ 2.0 pi) + (sim + (at-abs 0 (cue ikcurve)) + (at-abs 0 (cue lin)) + (at-abs (+ knee (/ 2.0 pi)) (cue kcurve))))))))) (defun soft-clip (sig) (let* ((knee (- 1 (/ 1.0 pi)))