import numpy as np def truncate_audio_to_last_n_seconds(audio_array, n_seconds=8, sample_rate=16000): """Truncate audio to last n seconds or pad with zeros to meet n seconds.""" max_samples = n_seconds * sample_rate if len(audio_array) > max_samples: return audio_array[-max_samples:] elif len(audio_array) < max_samples: # Pad with zeros at the beginning padding = max_samples - len(audio_array) return np.pad(audio_array, (padding, 0), mode='constant', constant_values=0) return audio_array