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 20 Filename: calc_auto_corr.h 21 Funtions: 22 23 ------------------------------------------------------------------------------ 24 REVISION HISTORY 25 26 27 Who: Date: MM/DD/YYYY 28 Description: 29 ------------------------------------------------------------------------------ 30 31 32 ---------------------------------------------------------------------------- 33 ; CONTINUE ONLY IF NOT ALREADY DEFINED 34 ----------------------------------------------------------------------------*/ 35 #ifndef CALC_AUTO_CORR_H 36 #define CALC_AUTO_CORR_H 37 38 /*---------------------------------------------------------------------------- 39 ; INCLUDES 40 ----------------------------------------------------------------------------*/ 41 #include "pv_audio_type_defs.h" 42 43 /*---------------------------------------------------------------------------- 44 ; MACROS 45 ; Define module specific macros here 46 ----------------------------------------------------------------------------*/ 47 48 /*---------------------------------------------------------------------------- 49 ; DEFINES 50 ; Include all pre-processor statements here. 51 ----------------------------------------------------------------------------*/ 52 53 /*---------------------------------------------------------------------------- 54 ; EXTERNAL VARIABLES REFERENCES 55 ; Declare variables used in this module but defined elsewhere 56 ----------------------------------------------------------------------------*/ 57 58 /*---------------------------------------------------------------------------- 59 ; SIMPLE TYPEDEF'S 60 ----------------------------------------------------------------------------*/ 61 62 /*---------------------------------------------------------------------------- 63 ; ENUMERATED TYPEDEF'S 64 ----------------------------------------------------------------------------*/ 65 66 /*---------------------------------------------------------------------------- 67 ; STRUCTURES TYPEDEF'S 68 ----------------------------------------------------------------------------*/ 69 70 71 struct ACORR_COEFS 72 { 73 Int32 r11r; 74 Int32 r01r; 75 Int32 r02r; 76 Int32 r12r; 77 Int32 r22r; 78 #ifdef HQ_SBR 79 Int32 r01i; 80 Int32 r02i; 81 Int32 r12i; 82 #endif 83 Int32 det; 84 }; 85 86 /*---------------------------------------------------------------------------- 87 ; GLOBAL FUNCTION DEFINITIONS 88 ; Function Prototype declaration 89 ----------------------------------------------------------------------------*/ 90 91 #ifdef __cplusplus 92 extern "C" 93 { 94 #endif 95 96 void calc_auto_corr_LC(struct ACORR_COEFS *ac, 97 Int32 realBuf[][32], 98 Int32 bd, 99 Int32 len); 100 101 102 #ifdef HQ_SBR 103 104 void calc_auto_corr(struct ACORR_COEFS *ac, 105 Int32 realBuf[][32], 106 Int32 imagBuf[][32], 107 Int32 bd, 108 Int32 len); 109 110 #endif 111 112 113 #ifdef __cplusplus 114 } 115 #endif 116 117 /*---------------------------------------------------------------------------- 118 ; END 119 ----------------------------------------------------------------------------*/ 120 #endif 121 122 123