mpir2c
Functions
- 
int main(int argc, char *argv[])
 mpir2c [ option ] [ infile ]
-m int
order of impulse response \((0 \le M_1)\)
-l int
length of impulse response \((1 \le M_1 + 1)\)
-M int
order of cesptral coefficients \((0 \le M_2)\)
infile str
double-type minimum phase impulse response
stdout
double-type cepstral coefficients
- Parameters:
 argc – [in] Number of arguments.
argv – [in] Argument vector.
- Returns:
 0 on success, 1 on failure.
- 
class MinimumPhaseImpulseResponseToCepstrum
 Convert minimum phase impulse response to cepstrum.
The input is the \(M_1\)-th order impulse response:
\[ \begin{array}{cccc} h(0), & h(1), & \ldots, & h(M_1), \end{array} \]and the output is the \(M_2\)-th order cepstral coefficients:\[ \begin{array}{cccc} c(0), & c(1), & \ldots, & c(M_2). \end{array} \]The conversion is based on a recursion formula.Public Functions
- 
MinimumPhaseImpulseResponseToCepstrum(int num_input_order, int num_output_order)
 - Parameters:
 num_input_order – [in] Order of impulse response, \(M_1\).
num_output_order – [in] Order of cepstral coefficients, \(M_2\).
- 
inline int GetNumInputOrder() const
 - Returns:
 Order of impulse response.
- 
inline int GetNumOutputOrder() const
 - Returns:
 Order of cepstral coefficients.
- 
inline bool IsValid() const
 - Returns:
 True if this object is valid.
- 
bool Run(const std::vector<double> &minimum_phase_impulse_response, std::vector<double> *cepstrum) const
 - Parameters:
 minimum_phase_impulse_response – [in] \(M_1\)-th order impulse response.
cepstrum – [out] \(M_2\)-th order cepstral coefficients.
- Returns:
 True on success, false on failure.
- 
MinimumPhaseImpulseResponseToCepstrum(int num_input_order, int num_output_order)