diff --git a/Audio/Chain/DSP/DSPRubberbandNode.m b/Audio/Chain/DSP/DSPRubberbandNode.m index 7232ffed0..648dcf1de 100644 --- a/Audio/Chain/DSP/DSPRubberbandNode.m +++ b/Audio/Chain/DSP/DSPRubberbandNode.m @@ -379,6 +379,9 @@ static void * kDSPRubberbandNodeContext = &kDSPRubberbandNodeContext; AudioChunk *chunk = nil; chunk = [self convert]; if(!chunk || ![chunk frameCount]) { + if(!ts) { + flushed = previousNode && [[previousNode buffer] isEmpty] && [previousNode endOfStream] == YES; + } if(flushed) { usleep(500); endOfStream = YES;