mgcep#
- class diffsptk.MelCepstralAnalysis(*, fft_length, cep_order, alpha=0, n_iter=0)[source]#
See this page for details. Note that the current implementation does not use the efficient Toeplitz-plus-Hankel system solver.
- Parameters:
- fft_lengthint >= 2M
The number of FFT bins, \(L\).
- cep_orderint >= 0
The order of the cepstrum, \(M\).
- alphafloat in (-1, 1)
The frequency warping factor, \(\alpha\).
- n_iterint >= 0
The number of iterations.
- forward(x)[source]#
Perform mel-cepstral analysis.
- Parameters:
- xTensor [shape=(…, L/2+1)]
The power spectrum.
- Returns:
- outTensor [shape=(…, M+1)]
The mel-cepstrum.
Examples
>>> x = diffsptk.ramp(19) >>> stft = diffsptk.STFT(frame_length=10, frame_period=10, fft_length=16) >>> mcep = diffsptk.MelCepstralAnalysis(3, 16, 0.1, n_iter=1) >>> mc = mcep(stft(x)) >>> mc tensor([[-0.8851, 0.7917, -0.1737, 0.0175], [-0.3522, 4.4222, -1.0882, -0.0511]])
- diffsptk.functional.mcep(x, cep_order, alpha=0, n_iter=0)[source]#
Perform mel-cepstral analysis.
- Parameters:
- xTensor [shape=(…, L/2+1)]
The power spectrum.
- cep_orderint >= 0
The order of the cepstrum, \(M\).
- alphafloat in (-1, 1)
The frequency warping factor, \(\alpha\).
- n_iterint >= 0
The number of iterations.
- Returns:
- outTensor [shape=(…, M+1)]
The mel-cepstrum.
- class diffsptk.MelGeneralizedCepstralAnalysis(*, fft_length, cep_order, alpha=0, gamma=0, c=None, n_iter=0)[source]#
See this page for details. Note that the current implementation does not use the efficient Toeplitz-plus-Hankel system solver.
- Parameters:
- fft_lengthint >= 2M
The number of FFT bins, \(L\).
- cep_orderint >= 0
The order of the mel-cepstrum, \(M\).
- alphafloat in (-1, 1)
The frequency warping factor, \(\alpha\).
- gammafloat in [-1, 0]
The gamma parameter, \(\gamma\).
- cint >= 1 or None
The number of stages.
- n_iterint >= 0
THe number of iterations.
- forward(x)[source]#
Estimate mel-generalized cepstrum from spectrum.
- Parameters:
- xTensor [shape=(…, L/2+1)]
The power spectrum.
- Returns:
- outTensor [shape=(…, M+1)]
The mel-generalized cepstrum.
Examples
>>> x = diffsptk.ramp(19) >>> stft = diffsptk.STFT(frame_length=10, frame_period=10, fft_length=16) >>> mgcep = diffsptk.MelGeneralizedCepstralAnalysis( ... fft_length=16, cep_order=3, alpha=0.1, n_iter=1 ... ) >>> mc = mgcep(stft(x)) >>> mc tensor([[-0.8851, 0.7917, -0.1737, 0.0175], [-0.3522, 4.4222, -1.0882, -0.0511]])