Spaces:
Runtime error
Runtime error
File size: 1,004 Bytes
9ff4511 1160793 9ff4511 20c7778 9ff4511 20c7778 9ff4511 20c7778 9ff4511 20c7778 9ff4511 20c7778 |
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 |
import torch
from torchaudio.transforms import Resample
from torchvision.transforms import RandomCrop
class Transform(torch.nn.Module):
def __init__(
self,
input_sample_rate,
sample_rate,
max_seconds,
normalize,
*args,
**kwargs
):
super().__init__()
self.input_sample_rate = input_sample_rate
self.sample_rate = sample_rate
self.resample = Resample(orig_freq=input_sample_rate, new_freq=sample_rate)
self.random_crop = RandomCrop((1, int(max_seconds * sample_rate)), pad_if_needed=True)
self.normalize = normalize
def forward(self, waveform: torch.Tensor) -> torch.Tensor:
if self.input_sample_rate != self.sample_rate:
waveform = self.resample(waveform)
if self.normalize:
waveform = waveform / torch.std(waveform)
cropped = self.random_crop(waveform)
return cropped
|