1 /* 2 * Copyright (c) 2011 The WebRTC project authors. All Rights Reserved. 3 * 4 * Use of this source code is governed by a BSD-style license 5 * that can be found in the LICENSE file in the root of the source 6 * tree. An additional intellectual property rights grant can be found 7 * in the file PATENTS. All contributing project authors may 8 * be found in the AUTHORS file in the root of the source tree. 9 */ 10 11 /* 12 * lpc_analysis.h 13 * 14 * LPC functions 15 * 16 */ 17 18 #ifndef WEBRTC_MODULES_AUDIO_CODING_CODECS_ISAC_MAIN_SOURCE_LPC_ANALYSIS_H_ 19 #define WEBRTC_MODULES_AUDIO_CODING_CODECS_ISAC_MAIN_SOURCE_LPC_ANALYSIS_H_ 20 21 #include "settings.h" 22 #include "structs.h" 23 24 double WebRtcIsac_LevDurb(double *a, double *k, double *r, size_t order); 25 26 void WebRtcIsac_GetVars(const double *input, const int16_t *pitchGains_Q12, 27 double *oldEnergy, double *varscale); 28 29 void WebRtcIsac_GetLpcCoefLb(double *inLo, double *inHi, MaskFiltstr *maskdata, 30 double signal_noise_ratio, const int16_t *pitchGains_Q12, 31 double *lo_coeff, double *hi_coeff); 32 33 34 void WebRtcIsac_GetLpcGain( 35 double signal_noise_ratio, 36 const double* filtCoeffVecs, 37 int numVecs, 38 double* gain, 39 double corrLo[][UB_LPC_ORDER + 1], 40 const double* varscale); 41 42 void WebRtcIsac_GetLpcCoefUb( 43 double* inSignal, 44 MaskFiltstr* maskdata, 45 double* lpCoeff, 46 double corr[][UB_LPC_ORDER + 1], 47 double* varscale, 48 int16_t bandwidth); 49 50 #endif /* WEBRTC_MODULES_AUDIO_CODING_CODECS_ISAC_MAIN_SOURCE_LPC_ANALYIS_H_ */ 51