diff -r 000000000000 -r 951a5db380a0 videoeditorengine/mp3aacManipLib/AACGain/inc/tool2.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/videoeditorengine/mp3aacManipLib/AACGain/inc/tool2.h Fri Jan 29 14:08:33 2010 +0200 @@ -0,0 +1,103 @@ +/* +* Copyright (c) 2010 Ixonos Plc. +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of the "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - Initial contribution +* +* Contributors: +* Ixonos Plc +* +* Description: +* +*/ + + +/************************************************************************** + tool2.h - Interface to AAC decoding functions. + + Author(s): Juha Ojanpera + Copyright (c) 2003-2004 by Nokia Research Center, Speech and Audio Systems. + *************************************************************************/ + +#ifndef AAC_FUNC_H_ +#define AAC_FUNC_H_ + +/*-- Project Headers. --*/ +#include "aacaud.h" +#include "tool.h" + +/* + * Sfb initialization. + */ +void +AACSfbInfoInit(CSfb_Info *sfb, uint8 sIndex, uint8 is960); + +int32 +AACSampleRate(uint8 sampleRateIdx); + + +/* + * Control of channel configuration. + */ +int16 +CCChIndex(CMC_Info *mip, int16 cpe, int16 tag); + +int16 +ChIndex(int16 nch, int16 tag, int16 wnd, CMC_Info *mip); + + +/* + * AAC syntactic channel elements. + */ +int16 +GetSCE(CAACAudDec *aac, TBitStream *bs, CMC_Info *mip, uint8 *gains, + uint32 *gainPos, uint32 bufBitOffset); + +int16 +GetCPE(CAACAudDec *aac, TBitStream *bs, CMC_Info *mip, uint8 *gains, + uint32 *gainPos, uint32 bufBitOffset); + +int16 +GetCCE(CAACAudDec *aac, TBitStream *bs, CMC_Info *mip, CCInfo **ccInfo); + +int16 +GetICS(TBitStream *bs, TCh_Info *cip, uint8 *group, uint8 max_sfb, + uint8 *cb_map, int16 *quant, int16 global_gain, + int16 *factors); + +int16 +GetICSInfo(TBitStream *bs, CWindowInfo *winInfo, CLTP_Info *ltp_left, CLTP_Info *ltp_right); + + +/* + * Huffman decoding interfaces. + */ +uint32 +GetHcb(Huffman_DecSfInfo *huf_info, TBitStream *bs); + +int16 +huf_sfac(TBitStream *bs, TCh_Info *cip, uint8 *group, uint8 *cb_map, + int16 global_gain, int16 *factors, uint8 max_sfb); + +int16 +huf_spec(TBitStream *bs, CInfo *info, int16 nsect, uint8 *sect, + int16 *quant, Huffman_DecInfo **huf, uint8 parseOnly); + + +/* + * Global gain element extraction and storage. + */ +int16 +GetSCEGain(CAACAudDec *aac, TBitStream *bs, uint8 *gains, + uint32 *gainPos, uint32 bufBitOffset); + +int16 +GetCPEGain(CAACAudDec *aac, TBitStream *bs, uint8 *gains, + uint32 *gainPos, uint32 bufBitOffset); + +#endif /*-- AAC_FUNC_H_ --*/