1 /* ------------------------------------------------------------------ 2 * Copyright (C) 1998-2009 PacketVideo 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 13 * express or implied. 14 * See the License for the specific language governing permissions 15 * and limitations under the License. 16 * ------------------------------------------------------------------- 17 */ 18 /**************************************************************************************** 19 Portions of this file are derived from the following 3GPP standard: 20 21 3GPP TS 26.073 22 ANSI-C code for the Adaptive Multi-Rate (AMR) speech codec 23 Available from http://www.3gpp.org 24 25 (C) 2004, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TTA, TTC) 26 Permission to distribute, modify and use this file under the standard license 27 terms listed above has been obtained from the copyright holder. 28 ****************************************************************************************/ 29 /* 30 ------------------------------------------------------------------------------ 31 32 33 34 Filename: /audio/gsm_amr/c/include/ex_ctrl.h 35 36 Date: 02/08/2002 37 38 ------------------------------------------------------------------------------ 39 REVISION HISTORY 40 41 Description: Moved _cplusplus #ifdef after Include section. 42 43 Description: 44 45 ------------------------------------------------------------------------------ 46 INCLUDE DESCRIPTION 47 48 File : ex_ctrl.h 49 Purpose : Excitation Control module in background noise 50 51 ------------------------------------------------------------------------------ 52 */ 53 54 /*---------------------------------------------------------------------------- 55 ; CONTINUE ONLY IF NOT ALREADY DEFINED 56 ----------------------------------------------------------------------------*/ 57 #ifndef ex_ctrl_h 58 #define ex_ctrl_h "$Id $" 59 60 /*---------------------------------------------------------------------------- 61 ; INCLUDES 62 ----------------------------------------------------------------------------*/ 63 #include "typedef.h" 64 #include "cnst.h" 65 66 /*--------------------------------------------------------------------------*/ 67 #ifdef __cplusplus 68 extern "C" 69 { 70 #endif 71 72 /*---------------------------------------------------------------------------- 73 ; MACROS 74 ; Define module specific macros here 75 ----------------------------------------------------------------------------*/ 76 77 /*---------------------------------------------------------------------------- 78 ; DEFINES 79 ; Include all pre-processor statements here. 80 ----------------------------------------------------------------------------*/ 81 #define L_ENERGYHIST 60 82 /*---------------------------------------------------------------------------- 83 ; EXTERNAL VARIABLES REFERENCES 84 ; Declare variables used in this module but defined elsewhere 85 ----------------------------------------------------------------------------*/ 86 87 /*---------------------------------------------------------------------------- 88 ; SIMPLE TYPEDEF'S 89 ----------------------------------------------------------------------------*/ 90 91 /*---------------------------------------------------------------------------- 92 ; ENUMERATED TYPEDEF'S 93 ----------------------------------------------------------------------------*/ 94 95 /*---------------------------------------------------------------------------- 96 ; STRUCTURES TYPEDEF'S 97 ----------------------------------------------------------------------------*/ 98 99 /*---------------------------------------------------------------------------- 100 ; GLOBAL FUNCTION DEFINITIONS 101 ; Function Prototype declaration 102 ----------------------------------------------------------------------------*/ 103 /* 104 * Function : Ex_ctrl 105 * Purpose : Charaterice synthesis speech and detect background noise 106 * Returns : background noise decision; 0 = bgn, 1 = no bgn 107 */ 108 Word16 Ex_ctrl(Word16 excitation[], /*i/o: Current subframe excitation */ 109 Word16 excEnergy, /* i : Exc. Energy, sqrt(totEx*totEx)*/ 110 Word16 exEnergyHist[], /* i : History of subframe energies */ 111 Word16 voicedHangover, /* i : # of fr. after last voiced fr.*/ 112 Word16 prevBFI, /* i : Set i previous BFI */ 113 Word16 carefulFlag, /* i : Restrict dymamic in scaling */ 114 Flag *pOverflow 115 ); 116 117 /*---------------------------------------------------------------------------- 118 ; END 119 ----------------------------------------------------------------------------*/ 120 #ifdef __cplusplus 121 } 122 #endif 123 124 #endif /* _ex_ctrl_h_ */ 125 126 127 128 129 130 131 132