Procházet zdrojové kódy

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 před 8 roky
rodič
revize
b2f5123b65
1 změnil soubory, kde provedl 1 přidání a 1 odebrání
  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;
             *(dst++) = outsample;
         }
         }
 
 
-        outtime += outtimeincr;
+        outtime = i * outtimeincr;
     }
     }
 
 
     return outframes * chans * sizeof (float);
     return outframes * chans * sizeof (float);