diff --git a/soh/src/code/audio_playback.c b/soh/src/code/audio_playback.c index 6569123781..ce6c5d6f19 100644 --- a/soh/src/code/audio_playback.c +++ b/soh/src/code/audio_playback.c @@ -121,7 +121,11 @@ void Audio_NoteSetResamplingRate(NoteSubEu* noteSubEu, f32 resamplingRateInput) noteSubEu->bitField1.hasTwoParts = true; if (3.99996f < resamplingRateInput) { if (CVarGetInteger(CVAR_AUDIO("ExperimentalOctaveDrop"), 0) || noteSubEu->bitField1.isSyntheticWave) { - resamplingRate = resamplingRateInput * 0.25; + resamplingRate = resamplingRateInput * 0.5f; + + while (resamplingRate > 1.99998f) { + resamplingRate *= 0.5f; + } } else { resamplingRate = 1.99998f; }