diff options
-rw-r--r-- | libretro.c | 12 |
1 files changed, 10 insertions, 2 deletions
@@ -397,7 +397,7 @@ static void S9xAudioCallback() { size_t avail; /* Just pick a big buffer. We won't use it all. */ - static int16_t audio_buf[0x10000]; + static int16_t audio_buf[0x20000]; S9xFinalizeSamples(); avail = S9xGetSampleCount(); @@ -432,7 +432,15 @@ void retro_init(void) S9xInitDisplay(); S9xInitGFX(); #ifdef USE_BLARGG_APU - S9xInitSound(16, 0); + //very slow devices will still pop + + //this needs to be applied to all snes9x cores + + //increasing the buffer size does not cause extra lag(tested with 1000ms buffer) + //bool8 S9xInitSound (int buffer_ms, int lag_ms) + + S9xInitSound(1000, 0);//just give it a 1 second buffer + S9xSetSamplesAvailableCallback(S9xAudioCallback); #else S9xInitSound(Settings.SoundPlaybackRate, |