cqt#
- diffsptk.CQT#
- alias of - ConstantQTransform
- class diffsptk.ConstantQTransform(frame_period, sample_rate, f_min=32.7, f_max=None, n_bin_per_octave=12)[source]#
- Perform constant-Q transform. The implementation is based on the simple matrix multiplication. - Parameters:
- frame_peirodint >= 1 [scalar]
- Frame period in samples. 
- sample_rateint >= 1 [scalar]
- Sample rate in Hz. 
- f_minfloat > 0 [scalar]
- Minimum center frequency in Hz. 
- f_maxfloat <= sample_rate // 2 [scalar]
- Maximum center frequency in Hz. 
- n_bin_per_octaveint >= 1 [scalar]
- number of bins per octave, \(B\). 
 
 - References [1]- J. C. Brown and M. S. Puckette, “An efficient algorithm for the calculation of a constant Q transform,” Journal of the Acoustical Society of America, vol. 92, no. 5, pp. 2698-2701, 1992. - forward(x)[source]#
- Apply CQT to signal. - Parameters:
- xTensor [shape=(…, T)]
- Signal. 
 
- Returns:
- XTensor [shape=(…, N, K)]
- CQT complex output, where N is the number of frames and K is CQ-bin. 
 
 - Examples - >>> x = diffsptk.sin(99) >>> cqt = diffsptk.CQT(100, 8000, n_bin_per_octave=1) >>> X = cqt(x).abs() >>> X tensor([[0.1054, 0.1479, 0.1113, 0.0604, 0.0327, 0.0160, 0.0076]]) 
 
See also