소스 검색

Fix for short non-looping sounds (#1067)

Short non-looping sounds can sometimes think they need to keep playing and will output their first few frames again. This helps to break out of all the loops instead of just this one.
jbosh 5 년 전
부모
커밋
019434a37e
1개의 변경된 파일6개의 추가작업 그리고 0개의 파일을 삭제
  1. 6 0
      src/raudio.c

+ 6 - 0
src/raudio.c

@@ -324,6 +324,12 @@ static void OnSendAudioDataToDevice(ma_device *pDevice, void *pFramesOut, const
                         framesToRead -= framesJustRead;
                         framesRead += framesJustRead;
                     }
+                    
+                    if (!audioBuffer->playing)
+                    {
+                        framesRead = frameCount;
+                        break;
+                    }
 
                     // If we weren't able to read all the frames we requested, break
                     if (framesJustRead < framesToReadRightNow)