Merge pull request #1057 from pipecat-ai/aleix/replace-resampy-soxr

improve audio resampling by switching from resampy to soxr
This commit is contained in:
Aleix Conchillo Flaqué
2025-01-21 17:52:49 -08:00
committed by GitHub
4 changed files with 8 additions and 4 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()