turn-detection / backend /audio_utils.py
amanetize's picture
Upload folder using huggingface_hub
dc98a34 verified
Raw
History Blame Contribute Delete
544 Bytes
from __future__ import annotations
import numpy as np
import config
def truncate_or_left_pad(audio: np.ndarray, n_seconds: int=config.SMART_TURN_WINDOW_SECONDS, sample_rate: int=config.SAMPLE_RATE) -> np.ndarray:
audio = np.asarray(audio, dtype=np.float32)
max_samples = n_seconds * sample_rate
if len(audio) > max_samples:
return audio[-max_samples:]
if len(audio) < max_samples:
padding = max_samples - len(audio)
return np.pad(audio, (padding, 0), mode='constant', constant_values=0)
return audio