diff --git a/Audio/Visualization/VisualizationController.swift b/Audio/Visualization/VisualizationController.swift index 899d13411..76c8990f3 100644 --- a/Audio/Visualization/VisualizationController.swift +++ b/Audio/Visualization/VisualizationController.swift @@ -67,10 +67,17 @@ class VisualizationController : NSObject { let bufferPointer = UnsafeBufferPointer(start: inPCM, count: amount) var j = self.visAudioCursor let k = self.visAudioSize - for i in 0..= k { j = 0 } + if(j + amount <= k) { + let endIndex = j + amount; + self.visAudio.replaceSubrange(j..= k) { j = 0 } + } else { + let inEndIndex = k - j + let remainder = amount - inEndIndex + self.visAudio.replaceSubrange(j..= k { j = 0 } + if(j + samplesToDo <= k) { + outPCMCopy.replaceSubrange(0..