Fix popping with non AUDIO_END_OF_FRAME % AUDIO_SAMPLES_PER_FRAME == 0 sample rates

This commit is contained in:
meepingsnesroms
2018-11-01 21:06:12 -07:00
parent dda3237a70
commit 200315e51c
2 changed files with 4 additions and 4 deletions

View File

@@ -69,9 +69,9 @@ CONFIG(debug, debug|release){
# DEFINES += EMU_SANDBOX_LOG_APIS
# also check for any buffer overflows and memory leaks
# -fsanitize=undefined,leak
# QMAKE_CFLAGS += -fstack-protector-strong -fsanitize=address -Werror=array-bounds
# QMAKE_CXXFLAGS += -fstack-protector-strong -fsanitize=address -Werror=array-bounds
# QMAKE_LFLAGS += -fsanitize=address
QMAKE_CFLAGS += -fstack-protector-strong -fsanitize=address -Werror=array-bounds
QMAKE_CXXFLAGS += -fstack-protector-strong -fsanitize=address -Werror=array-bounds
QMAKE_LFLAGS += -fsanitize=address
}
}else{
# release build, go fast

View File

@@ -592,7 +592,7 @@ void emulateFrame(){
palmCycleCounter -= (double)CRYSTAL_FREQUENCY / EMU_FPS;
//audio
blip_end_frame(palmAudioResampler, AUDIO_END_OF_FRAME);
blip_end_frame(palmAudioResampler, blip_clocks_needed(palmAudioResampler, AUDIO_SAMPLES_PER_FRAME));
//printf("There are %d audio samples available\n", blip_samples_avail(palmAudioResampler));
blip_read_samples(palmAudioResampler, palmAudio, AUDIO_SAMPLES_PER_FRAME, true);
MULTITHREAD_LOOP for(uint32_t samples = 0; samples < AUDIO_SAMPLES_PER_FRAME * 2; samples += 2)