Răsfoiți Sursa

audio: calculate resampling time directly, don't increment (thanks, Eric!).

Fixes buffer overruns as floating point errors accumulate.

Partially fixes Bugzilla #3848.
Ryan C. Gordon 8 ani în urmă
părinte
comite
b2f5123b65
1 a modificat fișierele cu 1 adăugiri și 1 ștergeri
  1. 1 1
      src/audio/SDL_audiocvt.c

+ 1 - 1
src/audio/SDL_audiocvt.c

@@ -527,7 +527,7 @@ SDL_ResampleAudio(const int chans, const int inrate, const int outrate,
             *(dst++) = outsample;
         }
 
-        outtime += outtimeincr;
+        outtime = i * outtimeincr;
     }
 
     return outframes * chans * sizeof (float);