- flamo.auxiliary.eq.eq_freqs(interval: int = 1, start_freq: float = 31.25, end_freq: float = 16000.0)
Calculate the center frequencies and shelving crossover frequencies for an equalizer.
- Arguments:
interval (int, optional): The fraction of octave to use in one interval. Default: 1.
start_freq (float, optional): The starting frequency in Hz. Default: 31.25.
end_freq (float, optional): The ending frequency in Hz. Default: 16000.
- Returns:
tuple: A tuple containing the center frequencies and shelving crossover frequencies in Hz.
- flamo.auxiliary.eq.octave_bands(interval: int = 1, start_freq: float = 31.25, end_freq: float = 16000.0)
Generate a list of octave band central frequencies.
- Arguments:
interval (int, optional): The fraction of octave to use in one interval. Default: 1.
start_freq (float, optional): The starting frequency in Hz. Default: 31.25.
end_freq (float, optional): The ending frequency in Hz. Default: 16000.
- Returns:
central_freq (list): A list of octave band central frequencies.
- flamo.auxiliary.eq.geq(center_freq: Tensor, shelving_freq: Tensor, R: Tensor, gain_db: Tensor, fs: int = 48000, device: str = 'cpu')
Computes the second-order sections coefficients of a graphic equalizer. The EQ is implemented as a series of shelving peak filters, using the
flamo.functional.shelving_filter()
andflamo.functional.peak_filter()
methods.- Arguments:
center_freq (torch.Tensor): Tensor containing the center frequencies of the bandpass filters in Hz.
shelving_freq (torch.Tensor): Tensor containing the corner frequencies of the shelving filters in Hz.
R (torch.Tensor): Tensor containing the resonance factor for the bandpass filters.
gain_db (torch.Tensor): Tensor containing the gain values in decibels for each frequency band.
fs (int, optional): Sampling frequency. Default: 48000 Hz.
device (str, optional): Device to use for constructing tensors. Default: cpu.
- Returns:
tuple: A tuple containing the numerator and denominator coefficients of the GEQ filter.
- flamo.auxiliary.eq.design_geq(target_gain: Tensor, center_freq: Tensor, shelving_crossover: Tensor, fs: int = 48000)
Design a Graphic Equalizer (GEQ) filter.
- Arguments:
target_gain (torch.Tensor): Target command gain values in dB for each frequency band.
center_freq (torch.Tensor): Center frequencies of each band.
shelving_crossover (torch.Tensor): Crossover frequencies for shelving filters.
fs (int, optional): Sampling frequency. Default: 48000 Hz.
- Returns:
tuple: A tuple containing the numerator and denominator coefficients of the GEQ filter.