Spaces:
Building
Building
File size: 782 Bytes
f6b56a2 |
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 |
import scipy
import numpy as np
import torchaudio
import torch
from pathlib import Path
from typing import Tuple
def load_raw_audio(path: str) -> np.array:
assert path.exists(), f"Audio path {path} does not exist"
rate, signal = scipy.io.wavfile.read(path)
return rate, signal
def load_audio_tensor(path: Path, device=None) -> Tuple[torch.Tensor, int]:
assert path.exists(), f"Audio path {path} does not exist"
signal, rate = torchaudio.load(str(path))
if device is not None:
signal = signal.to(device)
return signal, rate
def save_audio_tensor(path: Path, signal: torch.Tensor, sampling_rate: int):
torchaudio.save(
str(path),
signal.detach().cpu(),
sample_rate=sampling_rate,
channels_first=True
)
|