ol_ltp.h revision b841f14f8e51f2365945281fbfa54ef6a1b1b5a6
19066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* ------------------------------------------------------------------ 29066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Copyright (C) 1998-2009 PacketVideo 39066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * 49066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License"); 5a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes * you may not use this file except in compliance with the License. 6a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes * You may obtain a copy of the License at 7a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes * 89066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 9a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes * 109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Unless required by applicable law or agreed to in writing, software 11a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes * distributed under the License is distributed on an "AS IS" BASIS, 12a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either 13a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes * express or implied. 14a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes * See the License for the specific language governing permissions 159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * and limitations under the License. 169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * ------------------------------------------------------------------- 179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */ 189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/**************************************************************************************** 199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source ProjectPortions of this file are derived from the following 3GPP standard: 209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 219066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 3GPP TS 26.073 229066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ANSI-C code for the Adaptive Multi-Rate (AMR) speech codec 239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project Available from http://www.3gpp.org 249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project(C) 2004, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TTA, TTC) 26a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott HughesPermission to distribute, modify and use this file under the standard license 279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectterms listed above has been obtained from the copyright holder. 289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project****************************************************************************************/ 299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/* 309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project------------------------------------------------------------------------------ 319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 329066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 33a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes 34a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes Filename: /audio/gsm_amr/c/src/include/ol_ltp.h 359066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 36a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes Date: 02/06/2002 379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 383b2dc9e2253671fd8432fb0b1e18a0b5a38c4deaChristopher Ferris------------------------------------------------------------------------------ 393b2dc9e2253671fd8432fb0b1e18a0b5a38c4deaChristopher Ferris REVISION HISTORY 403b2dc9e2253671fd8432fb0b1e18a0b5a38c4deaChristopher Ferris 419066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project Description: Replaced "int" and/or "char" with OSCL defined types. 423b2dc9e2253671fd8432fb0b1e18a0b5a38c4deaChristopher Ferris 433b2dc9e2253671fd8432fb0b1e18a0b5a38c4deaChristopher Ferris Description: Moved _cplusplus #ifdef after Include section. 443b2dc9e2253671fd8432fb0b1e18a0b5a38c4deaChristopher Ferris 453b2dc9e2253671fd8432fb0b1e18a0b5a38c4deaChristopher Ferris Description: 463b2dc9e2253671fd8432fb0b1e18a0b5a38c4deaChristopher Ferris 479066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project------------------------------------------------------------------------------ 489066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project INCLUDE DESCRIPTION 499066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 509066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project File : ol_ltp.h 519066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project Purpose : Compute the open loop pitch lag. 529066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 539066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project------------------------------------------------------------------------------ 549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project*/ 559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 56a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes#ifndef OL_LTP_H 57a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes#define OL_LTP_H "$Id $" 58a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes 59a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes/*---------------------------------------------------------------------------- 60a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes; INCLUDES 61a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes----------------------------------------------------------------------------*/ 62a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes#include "typedef.h" 63a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes#include "mode.h" 64a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes#include "p_ol_wgh.h" 65a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes 66a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes/*--------------------------------------------------------------------------*/ 67a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes#ifdef __cplusplus 689066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectextern "C" 69a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes{ 709066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project#endif 719066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 729066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /*---------------------------------------------------------------------------- 73a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes ; MACROS 749066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ; [Define module specific macros here] 759066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ----------------------------------------------------------------------------*/ 769066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 77a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes /*---------------------------------------------------------------------------- 78a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes ; DEFINES 79a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes ; [Include all pre-processor statements here.] 809066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ----------------------------------------------------------------------------*/ 819066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project 82a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes /*---------------------------------------------------------------------------- 83a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes ; EXTERNAL VARIABLES REFERENCES 849066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ; [Declare variables used in this module but defined elsewhere] 85a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes ----------------------------------------------------------------------------*/ 86a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes 879066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project /*---------------------------------------------------------------------------- 883b2dc9e2253671fd8432fb0b1e18a0b5a38c4deaChristopher Ferris ; SIMPLE TYPEDEF'S 893b2dc9e2253671fd8432fb0b1e18a0b5a38c4deaChristopher Ferris ----------------------------------------------------------------------------*/ 903b2dc9e2253671fd8432fb0b1e18a0b5a38c4deaChristopher Ferris 913b2dc9e2253671fd8432fb0b1e18a0b5a38c4deaChristopher Ferris /*---------------------------------------------------------------------------- 923b2dc9e2253671fd8432fb0b1e18a0b5a38c4deaChristopher Ferris ; ENUMERATED TYPEDEF'S 933b2dc9e2253671fd8432fb0b1e18a0b5a38c4deaChristopher Ferris ----------------------------------------------------------------------------*/ 94a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes 95a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes /*---------------------------------------------------------------------------- 96a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes ; STRUCTURES TYPEDEF'S 97a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes ----------------------------------------------------------------------------*/ 98a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes 99a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes 100a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes /*---------------------------------------------------------------------------- 101a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes ; GLOBAL FUNCTION DEFINITIONS 1029066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ; [List function prototypes here] 1039066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ----------------------------------------------------------------------------*/ 1049066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project void ol_ltp( 1059066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project pitchOLWghtState *st, /* i/o : State struct */ 1069066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project vadState *vadSt, /* i/o : VAD state struct */ 1079066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project enum Mode mode, /* i : coder mode */ 1089066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project Word16 wsp[], /* i : signal used to compute the OL pitch, Q0 */ 109a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes /* uses signal[-pit_max] to signal[-1] */ 1109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project Word16 *T_op, /* o : open loop pitch lag, Q0 */ 1119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project Word16 old_lags[], /* i : history with old stored Cl lags */ 112a480dafbf2f0c7e526ba44dcbb0d603470df2199Elliott Hughes Word16 ol_gain_flg[], /* i : OL gain flag */ 1139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project Word16 idx, /* i : index */ 1149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project Flag dtx, /* i : dtx flag; use dtx=1, do not use dtx=0 */ 1159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project Flag *pOverflow /* i/o : overflow Flag */ 1169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project ); 117 118 119#ifdef __cplusplus 120} 121#endif 122 123#endif /* _OL_LTP_H_ */ 124 125 126