GB, GBA Audio: Clamp audio buffer size to 8192

This commit is contained in:
Vicki Pfau 2023-04-22 22:27:22 -07:00
parent 03dd7d70b4
commit 85aaa6c3c5
2 changed files with 6 additions and 0 deletions

View File

@ -138,6 +138,9 @@ void GBAudioReset(struct GBAudio* audio) {
} }
void GBAudioResizeBuffer(struct GBAudio* audio, size_t samples) { void GBAudioResizeBuffer(struct GBAudio* audio, size_t samples) {
if (samples > BLIP_BUFFER_SIZE / 2) {
samples = BLIP_BUFFER_SIZE / 2;
}
mCoreSyncLockAudio(audio->p->sync); mCoreSyncLockAudio(audio->p->sync);
audio->samples = samples; audio->samples = samples;
blip_clear(audio->left); blip_clear(audio->left);

View File

@ -106,6 +106,9 @@ void GBAAudioDeinit(struct GBAAudio* audio) {
} }
void GBAAudioResizeBuffer(struct GBAAudio* audio, size_t samples) { void GBAAudioResizeBuffer(struct GBAAudio* audio, size_t samples) {
if (samples > 0x2000) {
samples = 0x2000;
}
mCoreSyncLockAudio(audio->p->sync); mCoreSyncLockAudio(audio->p->sync);
audio->samples = samples; audio->samples = samples;
blip_clear(audio->psg.left); blip_clear(audio->psg.left);