librosa.core.hybrid_cqt¶
-
librosa.core.
hybrid_cqt
(y, sr=22050, hop_length=512, fmin=None, n_bins=84, bins_per_octave=12, tuning=0.0, filter_scale=1, norm=1, sparsity=0.01, window=’hann’, scale=True, pad_mode=’reflect’)[source]¶ Compute the hybrid constant-Q transform of an audio signal.
Here, the hybrid CQT uses the pseudo CQT for higher frequencies where the hop_length is longer than half the filter length and the full CQT for lower frequencies.
Parameters: - y : np.ndarray [shape=(n,)]
audio time series
- sr : number > 0 [scalar]
sampling rate of y
- hop_length : int > 0 [scalar]
number of samples between successive CQT columns.
- fmin : float > 0 [scalar]
Minimum frequency. Defaults to C1 ~= 32.70 Hz
- n_bins : int > 0 [scalar]
Number of frequency bins, starting at fmin
- bins_per_octave : int > 0 [scalar]
Number of bins per octave
- tuning : None or float in [-0.5, 0.5)
Tuning offset in fractions of a bin (cents).
If None, tuning will be automatically estimated from the signal.
- filter_scale : float > 0
Filter filter_scale factor. Larger values use longer windows.
- sparsity : float in [0, 1)
Sparsify the CQT basis by discarding up to sparsity fraction of the energy in each basis.
Set sparsity=0 to disable sparsification.
- window : str, tuple, number, or function
Window specification for the basis filters. See filters.get_window for details.
- pad_mode : string
Padding mode for centered frame analysis.
See also:
librosa.core.stft
and np.pad.
Returns: - CQT : np.ndarray [shape=(n_bins, t), dtype=np.float]
Constant-Q energy for each frequency at each time.
Raises: - ParameterError
If hop_length is not an integer multiple of 2**(n_bins / bins_per_octave)
Or if y is too short to support the frequency range of the CQT.
See also
Notes
This function caches at level 20.