Spaces:
Runtime error
Runtime error
import sounddevice as sd | |
import numpy as np | |
import matplotlib.pyplot as plt | |
def url_to_filename(url: str) -> str: | |
return f"{url.split('/')[-1]}.wav" | |
def play_audio(waveform: np.ndarray, sample_rate: int): | |
""" | |
Assumes that waveform is a numpy array normalized between -1 and 1. | |
""" | |
if waveform.max() > 1.0 or waveform.min() < -1.0: | |
raise ValueError("waveform must be a numpy array normalized between -1 and 1.") | |
sd.play(waveform, sample_rate) | |
sd.wait() | |
def plot_spectrogram(spec, title=None, ylabel="freq_bin", aspect="auto", xmax=None): | |
""" | |
Assumes that the spectrogram is in decibels. | |
""" | |
fig, axs = plt.subplots(1, 1) | |
axs.set_title(title or "Spectrogram (db)") | |
axs.set_ylabel(ylabel) | |
axs.set_xlabel("frame") | |
im = axs.imshow(spec, origin="lower", aspect=aspect) | |
if xmax: | |
axs.set_xlim((0, xmax)) | |
fig.colorbar(im, ax=axs) | |
return fig | |