Merge pull request #97109 from pattlebass/pitch-shift-fix

AudioEffectPitchShift: Fix distortion when pitch is 1.0
This commit is contained in:
Rémi Verschelde 2024-09-17 21:02:25 +02:00
commit 27dacd59e0
No known key found for this signature in database
GPG Key ID: C3336907360768E1

View File

@ -286,6 +286,11 @@ void SMBPitchShift::smbFft(float *fftBuffer, long fftFrameSize, long sign)
/* clang-format on */
void AudioEffectPitchShiftInstance::process(const AudioFrame *p_src_frames, AudioFrame *p_dst_frames, int p_frame_count) {
// Avoid distortion by skipping processing if pitch_scale is 1.0.
if (Math::is_equal_approx(base->pitch_scale, 1.0f)) {
return;
}
float sample_rate = AudioServer::get_singleton()->get_mix_rate();
float *in_l = (float *)p_src_frames;