diff options
author | Damien Zammit <damien@zamaudio.com> | 2014-04-22 00:44:59 +1000 |
---|---|---|
committer | Damien Zammit <damien@zamaudio.com> | 2014-04-22 00:44:59 +1000 |
commit | a59bad182f67e496f977bf2d4e02995e58aa59b3 (patch) | |
tree | 6b3d41628f00d49f474a36ef724aa7b53ea77dfb | |
parent | 2bc767b9fd761abf9cfa2750a3c0b3c007f62b50 (diff) |
Fixed denormals on ZamEQ2
Signed-off-by: Damien Zammit <damien@zamaudio.com>
-rw-r--r-- | plugins/ZamEQ2/ZamEQ2Plugin.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/plugins/ZamEQ2/ZamEQ2Plugin.cpp b/plugins/ZamEQ2/ZamEQ2Plugin.cpp index cf98ec3..05e2d5d 100644 --- a/plugins/ZamEQ2/ZamEQ2Plugin.cpp +++ b/plugins/ZamEQ2/ZamEQ2Plugin.cpp @@ -379,12 +379,14 @@ void ZamEQ2Plugin::peq(int i, int ch, float srate, float fc, float g, float bw) float ZamEQ2Plugin::run_filter(int i, int ch, double in) { double out; + in = sanitize_denormal(in); out = in * b0[ch][i] + x1[ch][i] * b1[ch][i] + x2[ch][i] * b2[ch][i] - y1[ch][i] * a1[ch][i] - y2[ch][i] * a2[ch][i] + 1e-20f; - x2[ch][i] = x1[ch][i]; - y2[ch][i] = y1[ch][i]; + out = sanitize_denormal(out); + x2[ch][i] = sanitize_denormal(x1[ch][i]); + y2[ch][i] = sanitize_denormal(y1[ch][i]); x1[ch][i] = in; y1[ch][i] = out; |