From 4499e5bcc6f26ccc4926e0e956fab21cc138373f Mon Sep 17 00:00:00 2001 From: "Ryan C. Gordon" Date: Sat, 6 Aug 2016 03:45:45 -0400 Subject: [PATCH] disk audio: Make default i/o delay match what device is meant to be running at. --- src/audio/disk/SDL_diskaudio.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/audio/disk/SDL_diskaudio.c b/src/audio/disk/SDL_diskaudio.c index af0357322..a2dd48295 100644 --- a/src/audio/disk/SDL_diskaudio.c +++ b/src/audio/disk/SDL_diskaudio.c @@ -41,7 +41,6 @@ #define DISKENVR_INFILE "SDL_DISKAUDIOFILEIN" #define DISKDEFAULT_INFILE "sdlaudio-in.raw" #define DISKENVR_IODELAY "SDL_DISKAUDIODELAY" -#define DISKDEFAULT_IODELAY 150 /* This function waits until it is possible to write a full sound buffer */ static void @@ -140,7 +139,11 @@ DISKAUD_OpenDevice(_THIS, void *handle, const char *devname, int iscapture) } SDL_zerop(this->hidden); - this->hidden->io_delay = (envr) ? SDL_atoi(envr) : DISKDEFAULT_IODELAY; + if (envr != NULL) { + this->hidden->io_delay = SDL_atoi(envr); + } else { + this->hidden->io_delay = ((this->spec.samples * 1000) / this->spec.freq); + } /* Open the audio device */ this->hidden->io = SDL_RWFromFile(fname, iscapture ? "rb" : "wb");