From c3afbc09c4a408f77234c0b77de0b0c53794b583 Mon Sep 17 00:00:00 2001 From: Andrew Belt Date: Fri, 16 Mar 2018 02:39:46 -0400 Subject: [PATCH] Clamp outputs post-conversion in Audio module --- src/Core/AudioInterface.cpp | 4 +++- src/app/ModuleBrowser.cpp | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/Core/AudioInterface.cpp b/src/Core/AudioInterface.cpp index e81f6f49..c45cfc97 100644 --- a/src/Core/AudioInterface.cpp +++ b/src/Core/AudioInterface.cpp @@ -60,7 +60,9 @@ struct AudioInterfaceIO : AudioIO { // Consume audio block for (int i = 0; i < frames; i++) { Frame f = outputBuffer.shift(); - memcpy(&output[numOutputs * i], &f, numOutputs * sizeof(float)); + for (int j = 0; j < numOutputs; j++) { + output[numOutputs*i + j] = clamp(f.samples[j], -1.f, 1.f); + } } } else { diff --git a/src/app/ModuleBrowser.cpp b/src/app/ModuleBrowser.cpp index fd361598..f2bc3c95 100644 --- a/src/app/ModuleBrowser.cpp +++ b/src/app/ModuleBrowser.cpp @@ -296,7 +296,7 @@ struct SearchModuleField : TextField { }; -struct ModuleBrowser : VirtualWidget { +struct ModuleBrowser : OpaqueWidget { SearchModuleField *searchField; ScrollWidget *moduleScroll; BrowserList *moduleList;