diff --git a/pcsx2/SPU2/spu2sys.cpp b/pcsx2/SPU2/spu2sys.cpp index 7d629d3000..700d88f3df 100644 --- a/pcsx2/SPU2/spu2sys.cpp +++ b/pcsx2/SPU2/spu2sys.cpp @@ -373,7 +373,12 @@ __forceinline bool StartQueuedVoice(uint coreidx, uint voiceidx) vc.ADSR.Phase = 1; vc.SCurrent = 28; vc.LoopMode = 0; - vc.SP = 0; + + // When SP >= 0 the next sample will be grabbed, we don't want this to happen + // instantly because in the case of pitch being 0 we want to delay getting + // the next block header. + vc.SP = -1; + vc.LoopFlags = 0; vc.NextA = vc.StartA | 1; vc.Prev1 = 0;