ndps2c
Functions
-
int main(int argc, char *argv[])
ndps2c [ option ] [ infile ]
-l int
FFT length \((2 \le L)\)
-m int
order of cepstrum \((0 \le M \le L/2)\)
infile str
double-type NDPS
stdout
double-type cepstrum
- Parameters:
argc – [in] Number of arguments.
argv – [in] Argument vector.
- Returns:
0 on success, 1 on failure.
See also
-
class NegativeDerivativeOfPhaseSpectrumToCepstrum
Convert negative derivative of phase spectrum to cepstral coefficients.
The input is the \((L/2+1)\)-length NDPS:
\[ \begin{array}{cccc} n(0), & n(1), & \ldots, & n(L/2+1), \end{array} \]and the output is the \(M\)-th order cepstral coefficients:\[ \begin{array}{cccc} 0, & c(1), & \ldots, & c(M). \end{array} \]The cepstral coefficients are obtained by using the inverse DFT:\[ c(m) = \frac{1}{mL} \sum_{k=0}^{L-1} n(k) e^{j2\pi mk / L}. \][1] B. Yegnanarayana, “Pole-zero decomposition of speech spectra,” Signal Processing, vol. 3, no. 1, pp. 5-17, 1981.
Public Functions
-
NegativeDerivativeOfPhaseSpectrumToCepstrum(int fft_length, int num_order)
- Parameters:
fft_length – [in] Length of NDPS, \(L\).
num_order – [in] Order of cepstrum, \(M\).
-
inline int GetFftLength() const
- Returns:
FFT length.
-
inline int GetNumOrder() const
- Returns:
Order of cepstrum.
-
inline bool IsValid() const
- Returns:
True if this object is valid.
-
bool Run(const std::vector<double> &negative_derivative_of_phase_spectrum, std::vector<double> *cepstrum, NegativeDerivativeOfPhaseSpectrumToCepstrum::Buffer *buffer) const
- Parameters:
negative_derivative_of_phase_spectrum – [in] \((L/2+1)\)-length NDPS.
cepstrum – [out] \(M\)-th order cepstrum.
buffer – [out] Buffer.
- Returns:
True on success, false on failure.
-
class Buffer
Buffer for NegativeDerivativeOfPhaseSpectrumToCepstrum class.
-
NegativeDerivativeOfPhaseSpectrumToCepstrum(int fft_length, int num_order)