Spaces:
Sleeping
Sleeping
File size: 802 Bytes
f2cac03 e88666e f2cac03 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | import librosa
import numpy as np
TARGET_SR = 16000
MAX_LENGTH = 80000
def load_audio(file_path):
audio, sr = librosa.load(file_path, sr=TARGET_SR)
return audio
def normalize_audio(audio):
max_val = np.max(np.abs(audio))
if max_val == 0:
return audio
return audio / max_val
def trim_silence(audio):
trimmed_audio, _ = librosa.effects.trim(audio)
return trimmed_audio
def pad_or_truncate(audio):
if len(audio) > MAX_LENGTH:
audio = audio[:MAX_LENGTH]
else:
padding = MAX_LENGTH - len(audio)
audio = np.pad(audio, (0, padding))
return audio
def preprocess_audio(file_path):
audio = load_audio(file_path)
audio = normalize_audio(audio)
audio = trim_silence(audio)
audio = pad_or_truncate(audio)
return audio |