diff --git a/Audio/Output/OutputCoreAudio.m b/Audio/Output/OutputCoreAudio.m index deaa4c0d1..62383cec5 100644 --- a/Audio/Output/OutputCoreAudio.m +++ b/Audio/Output/OutputCoreAudio.m @@ -1347,7 +1347,10 @@ current_device_listener(AudioObjectID inObjectID, UInt32 inNumberAddresses, cons } #endif outputController = nil; - visController = nil; + if(visController) { + [visController reset]; + visController = nil; + } if(rsvis) { rsstate_delete(rsvis); rsvis = NULL; diff --git a/Audio/Visualization/VisualizationController.swift b/Audio/Visualization/VisualizationController.swift index af305702b..b77d764cb 100644 --- a/Audio/Visualization/VisualizationController.swift +++ b/Audio/Visualization/VisualizationController.swift @@ -25,6 +25,17 @@ class VisualizationController : NSObject { class func sharedController() -> VisualizationController { return sharedVisualizationController } + + @objc + func reset() { + serialQueue.sync { + self.latency = 0; + let amount = self.visAudioSize + for i in 0..