Sound processing

The module sound is an ensemble of functions to load and preprocess audio signals.

Input and output

load(filename[, channel, detrend, verbose, ...]) Load an audio file (stereo or mono).
load_url(url) Download audio file from the web and load it as a variable.
load_spectrogram(filename, fs, duration[, ...]) Load an image from a file or an URL
write(filename, fs, data[, bit_depth]) Write a NumPy array as a WAV file with the Scipy method.

Preprocess audio

fir_filter(x, kernel[, axis]) Filter a signal using a 1d finite impulse response filter.
sinc(s, cutoff, fs[, atten, transition_bw, ...]) Filter 1D signal with a Kaiser-windowed filter.
smooth(Sxx[, std, verbose, display, savefig]) Smooth a spectrogram with a gaussian filter.
select_bandwidth(x, fs, fcut, forder[, ...]) Use a lowpass, highpass, bandpass or bandstop filter to process a 1d signal with an iir filter.
pcen(Sxx[, gain, bias, power, b, eps, ...]) Per-Channel Energy Normalization (PCEN)
remove_background(Sxx[, gauss_win, ...]) Remove background noise using spectral subtraction.
remove_background_morpho(Sxx[, q, display, ...]) Remove background noise in a spectrogram using mathematical morphology tool.
remove_background_along_axis(Sxx[, mode, ...]) Get the noisy profile along the defined axis and remove this profile from the spectrogram.
median_equalizer(Sxx[, display, savefig]) Remove background noise in spectrogram using median equalizer.
wave2frames(s[, Nt]) Reshape a sound waveform (ie vector) into a serie of frames (ie matrix) of length Nt.

Transform audio

spectrogram(x, fs[, window, nperseg, ...]) Compute a spectrogram using the short-time Fourier transform from an audio signal.
avg_power_spectro(Sxx_power) Computes the average of a power spectrogram along the time axis.
avg_amplitude_spectro(Sxx_ampli) Computes the average of an amplitude spectrogram along the time axis.
linear_to_octave(X, fn[, thirdOctave, display]) Transform a linear spectrum (1d) or Spectrogram (2d into octave or 1/3 octave spectrum (1d) or Spectrogram (2d).
envelope(s[, mode, Nt]) Calculate the envelope of a sound waveform (1d)
spectrum(s, fs[, nperseg, noverlap, nfft, ...]) Estimate the power spectral density or power spectrum of 1D signal.
resample(s, fs, target_fs[, res_type]) Changes the sample rate of an audio file or any time series.
trim(s, fs, min_t, max_t[, pad, pad_constant]) Slices a time series, from a initial time min_t to an ending time max_t.
normalize(s[, max_amp, max_db]) Normalize audio signal to desired amplitude or decibell full scale value (dBFS).
gain(s[, gain_db]) Amply amplification or attenuation to the audio signal.

Metrics

temporal_snr(s[, mode, Nt]) Compute the signal to noise ratio (SNR) of an audio signal in the time domain.
spectral_snr(Sxx_power) Compute the signal to noise ratio (SNR) of an audio from its spectrogram in the time-frequency domain.
sharpness(Sxx) Compute the sharpness of a spectrogram