/***************************************************************************\ * * (C) copyright Fraunhofer - IIS (2002) * All Rights Reserved * * $Header: /cvs/root/winamp/aacdec/incs/mp4dec_asc/celpspecificconfig_c.h,v 1.3 2012/05/08 20:16:50 audiodsp Exp $ * project : MPEG-4 Audio Decoder * contents/description: celp specific config interface * * This software and/or program is protected by copyright law and * international treaties. Any reproduction or distribution of this * software and/or program, or any portion of it, may result in severe * civil and criminal penalties, and will be prosecuted to the maximum * extent possible under law. * \***************************************************************************/ #ifndef __CELPSPECIFICCONFIG_C_H__ #define __CELPSPECIFICCONFIG_C_H__ #include "mp4dec_asc/audioobjecttypes.h" #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ struct CSBitStream; enum { MPE = 0, RPE = 1, fs8KHz = 0, fs16KHz = 1 }; typedef struct CSCelpSpecificConfig { int m_IsBaseLayer; int m_ExcitationMode; int m_SampleRateMode; int m_FineRateControl; int m_RPE_Configuration; int m_MPE_Configuration; int m_NumEnhLayers; int m_BandwidthScalabilityMode; int m_SilenceCompression; int m_BWS_configuration; int m_CelpBrsId; unsigned int m_isBWSLayer; } CSCelpSpecificConfig, *CSCelpSpecificConfigPtr; void CelpSpecificConfig_Parse(CSCelpSpecificConfigPtr self, CSCelpSpecificConfigPtr baselayer, const AUDIO_OBJECT_TYPE aot, struct CSBitStream *bs); int CelpSpecificConfig_GetSamplesPerFrame(CSCelpSpecificConfigPtr self); int CelpSpecificConfig_GetLayer(CSCelpSpecificConfigPtr csc, CSCelpSpecificConfigPtr csc_base); void CelpSpecificConfig_Copy(CSCelpSpecificConfigPtr dst, const CSCelpSpecificConfigPtr src); int CelpSpecificConfig_Print(CSCelpSpecificConfigPtr self, char string[], const AUDIO_OBJECT_TYPE aot); #ifdef __cplusplus } #endif #endif /* __CELPSPECIFICCONFIG_H__ */