diff --git a/src/core/AudioInterface.cpp b/src/core/AudioInterface.cpp index fe90229c..dd05a6d6 100644 --- a/src/core/AudioInterface.cpp +++ b/src/core/AudioInterface.cpp @@ -39,11 +39,6 @@ struct AudioInterfaceIO : AudioIO { maxInputs = MAX_INPUTS; } - ~AudioInterfaceIO() { - // Wait until processStream() is finished - std::lock_guard lock(audioMutex); - } - void processStream(const float *input, float *output, int length) override { if (numInputs > 0) { // TODO Do we need to wait on the input to be consumed here? @@ -111,6 +106,10 @@ struct AudioInterface : Module { AudioInterface() : Module(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS) { } + ~AudioInterface() { + audioIO.closeStream(); + } + void step() override; json_t *toJson() override {