mgc2sp

Functions

int main(int argc, char *argv[])

mgc2sp [ option ] [ infile ]

  • -m int

    • order of coefficients \((0 \le M)\)

  • -a double

    • all-pass constant \((|\alpha| < 1)\)

  • -g double

    • gamma \((|\gamma| \le 1)\)

  • -c int

    • gamma \(\gamma = -1 / C\) \((1 \le C)\)

  • -n

    • regard as normalized mel-generalized cepstrum

  • -u

    • regard as multiplied by gamma

  • -l int

    • FFT length \((2 \le N)\)

  • -o int

    • output format

      • 0 \(20 \log_{10} |H(z)|\)

      • 1 \(\log |H(z)|\)

      • 2 \(|H(z)|\)

      • 3 \(|H(z)|^2\)

      • 4 \(\arg|H(z)| / \pi\)

      • 5 \(\arg|H(z)|\)

      • 6 \(\arg|H(z)| \times 180/\pi\)

  • infile str

    • double-type mel-generalized cepstral coefficients

  • stdout

    • double-type spectrum

In the following example, 12-th order mel-generalized cepstral coefficients in data.mgcep are converted to log magnitude spectrum.

mgc2sp -m 12 -a 0.35 -c 2 < data.mgcep > data.spec
Parameters:
  • argc[in] Number of arguments.

  • argv[in] Argument vector.

Returns:

0 on success, 1 on failure.

See also

mgc2mgc fftr

class MelGeneralizedCepstrumToSpectrum

Convert mel-generalized cepstrum to spectrum.

This is a simple combination of MelGeneralizedCepstrumToMelGeneralizedCepstrum and RealValuedFastFourierTransform.

Public Functions

MelGeneralizedCepstrumToSpectrum(int num_order, double alpha, double gamma, bool is_normalized, bool is_multiplied, int fft_length)
Parameters:
  • num_order[in] Order of coefficients, \(M\).

  • alpha[in] All-pass constant, \(\alpha\).

  • gamma[in] Exponent parameter, \(\gamma\).

  • is_normalized[in] gain-normalized flag.

  • is_multiplied[in] gamma-multiplied flag.

  • fft_length[in] FFT length, \(N\).

inline int GetNumOrder() const
Returns:

Order of coefficients.

inline double GetAlpha() const
Returns:

Alpha.

inline double GetGamma() const
Returns:

Gamma.

inline bool IsNormalized() const
Returns:

True if input is gain-normalized.

inline bool IsMultiplied() const
Returns:

True if input is multiplied by gamma.

inline int GetFftLength() const
Returns:

FFT length.

inline bool IsValid() const
Returns:

True if this object is valid.

bool Run(const std::vector<double> &mel_generalized_cepstrum, std::vector<double> *amplitude_spectrum, std::vector<double> *phase_spectrum, MelGeneralizedCepstrumToSpectrum::Buffer *buffer) const
Parameters:
  • mel_generalized_cepstrum[in] \(M\)-th order mel-generalized cepstrum.

  • amplitude_spectrum[out] \(N\)-length amplitude spectrum.

  • phase_spectrum[out] \(N\)-length phase spectrum.

  • buffer[out] Buffer.

Returns:

True on success, false on failure.

class Buffer

Buffer for MelGeneralizedCepstrumToSpectrum class.