improve audio resampling by switching from resampy to soxr

This commit is contained in:
Aleix Conchillo Flaqué
2025-01-21 13:31:33 -08:00
parent f87ecd3a51
commit cacd6ba3fa
3 changed files with 7 additions and 3 deletions

View File

@@ -8,14 +8,14 @@ import audioop
import numpy as np
import pyloudnorm as pyln
import resampy
import soxr
def resample_audio(audio: bytes, original_rate: int, target_rate: int) -> bytes:
if original_rate == target_rate:
return audio
audio_data = np.frombuffer(audio, dtype=np.int16)
resampled_audio = resampy.resample(audio_data, original_rate, target_rate)
resampled_audio = soxr.resample(audio_data, original_rate, target_rate)
return resampled_audio.astype(np.int16).tobytes()