Removed from repo
This commit is contained in:
parent
3f856d2842
commit
0ee0230131
|
@ -1,326 +0,0 @@
|
|||
/****************************************************************************
|
||||
|
||||
This program is protected under international copyright laws as an
|
||||
unpublished work. Do not copy.
|
||||
|
||||
(C) Copyright Coding Technologies (2004 - 2007)
|
||||
(C) Copyright Dolby Sweden AB (2008 - 2009)
|
||||
All Rights Reserved
|
||||
|
||||
This software is company confidential information and the property of
|
||||
Dolby Sweden AB, and can not be reproduced or disclosed in any form
|
||||
without written authorization of Dolby Sweden AB.
|
||||
|
||||
Those intending to use this software module for other purposes are advised
|
||||
that this infringe existing or pending patents. Dolby Sweden AB has no
|
||||
liability for use of this software module or derivatives thereof in any
|
||||
implementation. Copyright is not released for any means. Dolby Sweden AB
|
||||
retains full right to use the code for its own purpose, assign or sell the
|
||||
code to a third party and to inhibit any user or third party from using the
|
||||
code. This copyright notice must be included in all copies or derivative
|
||||
works.
|
||||
|
||||
$Id: aacplusdectypes.h,v 1.2 2009/10/12 13:27:37 audiodsp Exp $
|
||||
|
||||
*******************************************************************************/
|
||||
|
||||
/*!
|
||||
\file
|
||||
\brief aacPlus Decoder Library Interface Datatypes
|
||||
\author Holger Hoerich
|
||||
*/
|
||||
|
||||
|
||||
#ifndef _AACPLUSDECTYPES_H_
|
||||
#define _AACPLUSDECTYPES_H_
|
||||
|
||||
|
||||
|
||||
/***
|
||||
MACROS *****/
|
||||
|
||||
|
||||
#define AACPLUSDEC_MAXPROGRAMS 16
|
||||
#define AACPLUSDEC_MAXDATASTREAMELEMENTS 16
|
||||
|
||||
|
||||
|
||||
typedef struct STRUCT_AACPLUSDECODER *HANDLE_AACPLUSDEC_DECODER;
|
||||
|
||||
|
||||
|
||||
/***
|
||||
ENUMERATION TYPES *****/
|
||||
|
||||
|
||||
/*!
|
||||
\brief Different Supported Output Formats
|
||||
*/
|
||||
typedef enum ENUM_AACPLUSDEC_OUTPUTFORMAT {
|
||||
AACPLUSDEC_OUTPUTFORMAT_INT16_HOSTENDIAN = 0 /*!< 16 bit signed integer as short, 2 bytes/sample,
|
||||
machine dep. endianess, clipped */
|
||||
,AACPLUSDEC_OUTPUTFORMAT_FLOAT /*!< -1.0 .. +1.0 scaled float, 4 bytes/sample,
|
||||
not clipped */
|
||||
,AACPLUSDEC_OUTPUTFORMAT_INT24_LITTLEENDIAN /*!< 24 bit signed integer packed in 3 bytes/sample,
|
||||
little endian, clipped */
|
||||
|
||||
} AACPLUSDEC_OUTPUTFORMAT;
|
||||
|
||||
|
||||
/*!
|
||||
\brief List of supported MPEG-4 Audio Object Types or MPEG-2 Profiles
|
||||
*/
|
||||
typedef enum ENUM_AACPLUSDEC_STREAMTYPE {
|
||||
AACPLUSDEC_STREAMTYPE_UNDEFINED = 0
|
||||
|
||||
/* MPEG-2 Profiles */
|
||||
,AACPLUSDEC_MPEG2_PROFILE_AACMAIN = 0x0200 | 0
|
||||
,AACPLUSDEC_MPEG2_PROFILE_AACLC = 0x0200 | 1
|
||||
|
||||
/* MPEG-4 Audio Object Types */
|
||||
,AACPLUSDEC_MPEG4_AOT_AACMAIN = 0x0400 | 1
|
||||
,AACPLUSDEC_MPEG4_AOT_AACLC = 0x0400 | 2
|
||||
,AACPLUSDEC_MPEG4_AOT_SBR = 0x0400 | 5
|
||||
|
||||
,AACPLUSDEC_STREAMTYPE_UNSUPPORTED = -1
|
||||
|
||||
} AACPLUSDEC_STREAMTYPE;
|
||||
|
||||
|
||||
/*!
|
||||
\brief Decoding States
|
||||
*/
|
||||
typedef enum ENUM_AACPLUSDEC_DECODINGSTATE {
|
||||
AACPLUSDEC_DECODINGSTATE_IDLE = 0 /*!< decoder awaits first frame, has not yet found a valid frame */
|
||||
,AACPLUSDEC_DECODINGSTATE_STREAMPARSED /*!< first frame parsed or decoded */
|
||||
,AACPLUSDEC_DECODINGSTATE_STREAMVERIFIED /*!< stream properties verified by second frame */
|
||||
,AACPLUSDEC_DECODINGSTATE_BADFRAME /*!< a bad frame occured */
|
||||
,AACPLUSDEC_DECODINGSTATE_FLUSHING /*!< flushing decoder */
|
||||
,AACPLUSDEC_DECODINGSTATE_ENDOFSTREAM /*!< final state, destroy instance */
|
||||
|
||||
} AACPLUSDEC_DECODINGSTATE;
|
||||
|
||||
|
||||
/*!
|
||||
\brief Possible Limitations to Decoder Behaviour
|
||||
*/
|
||||
typedef enum ENUM_AACPLUSDEC_CAPABILITY {
|
||||
AACPLUSDEC_CAPABILITY_FULL = 0
|
||||
,AACPLUSDEC_CAPABILITY_V1_ONLY = 1010
|
||||
|
||||
} AACPLUSDEC_CAPABILITY;
|
||||
|
||||
typedef enum ENUM_AACPLUSDEC_CHANNELMODE {
|
||||
AACPLUSDEC_CHANNELMODE_UNDEFINED = 0
|
||||
,AACPLUSDEC_CHANNELMODE_MONO
|
||||
,AACPLUSDEC_CHANNELMODE_STEREO
|
||||
,AACPLUSDEC_CHANNELMODE_2_1_CHANNEL
|
||||
,AACPLUSDEC_CHANNELMODE_PARAMETRIC_STEREO
|
||||
,AACPLUSDEC_CHANNELMODE_DUAL_CHANNEL
|
||||
,AACPLUSDEC_CHANNELMODE_3_CHANNEL_1REAR
|
||||
,AACPLUSDEC_CHANNELMODE_3_CHANNEL_MPEG
|
||||
,AACPLUSDEC_CHANNELMODE_3_CHANNEL_3SCE
|
||||
,AACPLUSDEC_CHANNELMODE_4_CHANNEL_MPEG
|
||||
,AACPLUSDEC_CHANNELMODE_4_CHANNEL_4SCE
|
||||
,AACPLUSDEC_CHANNELMODE_4_CHANNEL_2CPE
|
||||
,AACPLUSDEC_CHANNELMODE_5_CHANNEL
|
||||
,AACPLUSDEC_CHANNELMODE_5_1_CHANNEL
|
||||
,AACPLUSDEC_CHANNELMODE_5_CHANNEL_5SCE
|
||||
,AACPLUSDEC_CHANNELMODE_6_1_CHANNEL
|
||||
,AACPLUSDEC_CHANNELMODE_6_CHANNEL_6SCE
|
||||
,AACPLUSDEC_CHANNELMODE_6_CHANNEL_3CPE
|
||||
,AACPLUSDEC_CHANNELMODE_7_1_CHANNEL
|
||||
,AACPLUSDEC_CHANNELMODE_7_CHANNEL_7SCE
|
||||
,AACPLUSDEC_CHANNELMODE_8_CHANNEL_8SCE
|
||||
,AACPLUSDEC_CHANNELMODE_8_CHANNEL_4CPE
|
||||
|
||||
} AACPLUSDEC_CHANNELMODE ;
|
||||
|
||||
|
||||
typedef enum ENUM_AACPLUSDEC_CONFIGTYPE {
|
||||
AACPLUSDEC_CONFIGTYPE_UNSPECIFIED = 0
|
||||
,AACPLUSDEC_CONFIGTYPE_STREAMMUXCONFIG
|
||||
,AACPLUSDEC_CONFIGTYPE_AUDIOSPECIFICCONFIG
|
||||
,AACPLUSDEC_CONFIGTYPE_DECODERCONFIGDESCRIPTOR
|
||||
,AACPLUSDEC_CONFIGTYPE_DECODERSPECIFICINFO
|
||||
|
||||
} AACPLUSDEC_CONFIGTYPE;
|
||||
|
||||
typedef enum ENUM_AACPLUSDEC_BITSTREAMFORMAT {
|
||||
AACPLUSDEC_BITSTREAMFORMAT_AUTO = 0
|
||||
,AACPLUSDEC_BITSTREAMFORMAT_RAW
|
||||
,AACPLUSDEC_BITSTREAMFORMAT_ADIF
|
||||
,AACPLUSDEC_BITSTREAMFORMAT_ADTS
|
||||
,AACPLUSDEC_BITSTREAMFORMAT_LATM
|
||||
,AACPLUSDEC_BITSTREAMFORMAT_LOAS
|
||||
|
||||
} AACPLUSDEC_BITSTREAMFORMAT;
|
||||
|
||||
typedef enum ENUM_AACPLUSDEC_ERROR {
|
||||
AACPLUSDEC_OK = 0
|
||||
|
||||
,AACPLUSDEC_ERROR_GENERALERROR = 0x1100
|
||||
,AACPLUSDEC_ERROR_INVALIDHANDLE
|
||||
,AACPLUSDEC_ERROR_OUTOFMEMORY
|
||||
,AACPLUSDEC_ERROR_UNSUPPORTEDSETTING
|
||||
,AACPLUSDEC_ERROR_TARGETBUFFERTOOSMALL
|
||||
,AACPLUSDEC_ERROR_NEEDMOREDATA
|
||||
,AACPLUSDEC_ERROR_ENDOFSTREAM
|
||||
,AACPLUSDEC_ERROR_WRONGARGUMENT
|
||||
,AACPLUSDEC_ERROR_AACMAINNOTSUPORTED
|
||||
|
||||
} AACPLUSDEC_ERROR;
|
||||
|
||||
typedef enum ENUM_AACPLUSDEC_SIGNALLING {
|
||||
AACPLUSDEC_SIGNALLING_IMPLICIT = -1
|
||||
,AACPLUSDEC_SIGNALLING_DISABLED = 0
|
||||
,AACPLUSDEC_SIGNALLING_ENABLED_BC
|
||||
,AACPLUSDEC_SIGNALLING_ENABLED_NONBC
|
||||
|
||||
} AACPLUSDEC_SIGNALLING;
|
||||
|
||||
|
||||
|
||||
/***
|
||||
STRUCTURED TYPES *****/
|
||||
|
||||
|
||||
|
||||
/*!
|
||||
\brief Properties Of A Program Embeddded In The aacPlus Audio Stream
|
||||
*/
|
||||
typedef struct {
|
||||
int bProgramFound; /*!< true if this program is available in the bitstream */
|
||||
|
||||
int nOutputSamplingRate; /*!< output sampling frequency */
|
||||
int nOutputSamplesPerFrame; /*!< number of output samples per frame */
|
||||
int nStreamOutputChannels; /*!< number of audio output channels in the stream */
|
||||
int nOutputChannels; /*!< number of audio output channels after downmix */
|
||||
|
||||
int bProgramSbrEnabled; /*!< non-zero when SBR is decoded */
|
||||
int nAacSamplingRate; /*!< core sampling rate */
|
||||
int nAacChannels; /*!< core channels */
|
||||
|
||||
AACPLUSDEC_CHANNELMODE nChannelMode; /*!< audio channel configuration */
|
||||
int nNumberOfFrontChannels; /*!< number of front channels in this program */
|
||||
int nNumberOfSideChannels; /*!< number of side channels in this program */
|
||||
int nNumberOfRearChannels; /*!< number of rear channels in this program */
|
||||
int nNumberOfLfeChannels; /*!< number of LFE channels in this program */
|
||||
|
||||
|
||||
AACPLUSDEC_STREAMTYPE nStreamType; /*!< Audio Object Type if accessible (profile if MPEG-2) */
|
||||
AACPLUSDEC_SIGNALLING nSbrSignalling; /*!< SBR signalling */
|
||||
AACPLUSDEC_SIGNALLING nPsSignalling; /*!< PS signalling */
|
||||
|
||||
} AACPLUSDEC_PROGRAMPROPERTIES;
|
||||
|
||||
/*!
|
||||
\brief Properties Of The aacPlus Audio Stream
|
||||
*/
|
||||
typedef struct {
|
||||
AACPLUSDEC_DECODINGSTATE nDecodingState; /*!< state of decoding */
|
||||
int bSbrDecodingFailed; /*!< state of sbr decoding */
|
||||
|
||||
AACPLUSDEC_BITSTREAMFORMAT nBitstreamFormat; /*!< bitstream format, may be set for streams without synch */
|
||||
|
||||
int nBitrate; /*!< estimated bitrate (frequently updated) */
|
||||
|
||||
int nProgramsInStream; /*!< number of programs embedded in audio stream */
|
||||
int nCurrentProgram; /*!< index of current decoded program (defaults to 0) */
|
||||
|
||||
AACPLUSDEC_PROGRAMPROPERTIES programProperties[AACPLUSDEC_MAXPROGRAMS]; /*!< properties of embedded programs */
|
||||
|
||||
|
||||
} AACPLUSDEC_STREAMPROPERTIES;
|
||||
|
||||
|
||||
/*!
|
||||
\brief Settings of the decoder library
|
||||
*/
|
||||
typedef struct {
|
||||
int bEnableConcealment; /*!< set for concealment, erroneous frames muted otherwise */
|
||||
int bEnableOutputLimiter; /*!< activate limiter on the PCM output data */
|
||||
int bDoLowPowerSBR; /*!< use Low Power SBR */
|
||||
int bDoUpsampling; /*!< do upsampling by 2 when AAC sample rate is below 32kHz */
|
||||
int nDownsampleSbrAtTargetFs; /*!< do downsampled SBR when core sample rate is at or above given value in Hz */
|
||||
int bForceAdtsCRCheck; /*!< tell the decoder ADTS CRC is present even if not recognized (ist this correct?) */
|
||||
int bForceMpeg2Behaviour; /*!< tell the decoder to act like an MPEG-2 decoder, i.e. apply concealment on PNS frames */
|
||||
int bNoChannelReordering; /*!< tell the decoder to keep the channels in the order as they appear in the bitstream */
|
||||
|
||||
AACPLUSDEC_CAPABILITY eDecCapability; /*!< set decoding capability */
|
||||
|
||||
int reserved1;
|
||||
int reserved2;
|
||||
|
||||
int nMaxMainAudioChannels; /*!< allocate num. audio channels */
|
||||
int nMaxLFEChannels; /*!< allocate num. low frequency enhancement channels */
|
||||
int nMaxIndependentlySwitchedCouplingChannels; /*!< allocate num. independently switched CCE */
|
||||
int nMaxDependentlySwitchedCouplingChannels; /*!< allocate num. dependently switched CCE */
|
||||
|
||||
int nDmxOutputChannels; /*!< number of downmix channels (0..2; 0 means no downmix) */
|
||||
int nDmxCoefficients; /*!< coefficient selection according to 13818-7, Table 8.3.8.5 */
|
||||
|
||||
|
||||
|
||||
|
||||
} AACPLUSDEC_EXPERTSETTINGS;
|
||||
|
||||
/***
|
||||
BUFFER DESCRIPTIONS *****/
|
||||
|
||||
|
||||
/*!
|
||||
\brief Audio Buffer Description
|
||||
*/
|
||||
typedef struct {
|
||||
int nBytesBufferSizeIn;
|
||||
int nBytesWrittenOut;
|
||||
int nBytesMissedOut;
|
||||
} AACPLUSDEC_AUDIOBUFFERINFO;
|
||||
|
||||
|
||||
/*!
|
||||
\brief Bitstream Buffer Description
|
||||
*/
|
||||
typedef struct {
|
||||
int nBytesGivenIn;
|
||||
int nBitsOffsetIn;
|
||||
int nBytesReadOut;
|
||||
} AACPLUSDEC_BITSTREAMBUFFERINFO;
|
||||
|
||||
|
||||
/*!
|
||||
\brief Datastream Element Description
|
||||
*/
|
||||
typedef struct {
|
||||
int nInstanceTagOut;
|
||||
int nBytesOffsetOut;
|
||||
int nBytesLengthOut;
|
||||
} AACPLUSDEC_DATASTREAMELEMENT;
|
||||
|
||||
|
||||
/*!
|
||||
\brief Datastream Buffer Description
|
||||
*/
|
||||
typedef struct {
|
||||
int nBytesBufferSizeIn;
|
||||
int nBytesWrittenOut;
|
||||
int nBytesMissedOut;
|
||||
int nNumDataStreamElementsOut;
|
||||
AACPLUSDEC_DATASTREAMELEMENT elementDescription[AACPLUSDEC_MAXDATASTREAMELEMENTS];
|
||||
} AACPLUSDEC_DATASTREAMBUFFERINFO;
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/***
|
||||
END *****************************/
|
||||
|
||||
|
||||
|
||||
#endif /* _AACPLUSDECTYPES_H_ */
|
|
@ -1,117 +0,0 @@
|
|||
#ifndef __WASABI_API_AACPLUSDECODER_H
|
||||
#define __WASABI_API_AACPLUSDECODER_H
|
||||
|
||||
#include <bfc/dispatch.h>
|
||||
#include "aacplusdectypes.h"
|
||||
#include <bfc/platform/types.h>
|
||||
class NOVTABLE api_aacplusdecoder : public Dispatchable
|
||||
{
|
||||
protected:
|
||||
api_aacplusdecoder() {}
|
||||
~api_aacplusdecoder() {}
|
||||
public:
|
||||
DISPATCH_CODES
|
||||
{
|
||||
AACPLUSDECODER_EASY_OPEN = 10,
|
||||
AACPLUSDECODER_CLOSE = 20,
|
||||
AACPLUSDECODER_RESTART = 30,
|
||||
|
||||
AACPLUSDECODER_READ_CONFIG_STREAM = 40,
|
||||
AACPLUSDECODER_GET_DECODER_SETTINGS_HANDLE = 50,
|
||||
AACPLUSDECODER_SET_DECODER_SETTINGS = 60,
|
||||
|
||||
AACPLUSDECODER_GET_STREAM_PROPERTIES_HANDLE = 70,
|
||||
|
||||
AACPLUSDECODER_STREAM_FEED =80,
|
||||
AACPLUSDECODER_STREAM_DECODE=90,
|
||||
|
||||
AACPLUSDECODER_FRAME_DECODE=100,
|
||||
|
||||
};
|
||||
|
||||
AACPLUSDEC_ERROR EasyOpen(AACPLUSDEC_OUTPUTFORMAT outputFormat, int nMaxAudioChannels);
|
||||
void Close();
|
||||
AACPLUSDEC_ERROR Restart();
|
||||
|
||||
AACPLUSDEC_ERROR ReadConfigStream(unsigned char *pucConfigStreamBufferIn, AACPLUSDEC_BITSTREAMBUFFERINFO *hConfigStreamBufferInfoInOut, AACPLUSDEC_CONFIGTYPE nConfigTypeIn, int bConfigStreamInBand, AACPLUSDEC_BITSTREAMFORMAT bitstreamFormatIn);
|
||||
AACPLUSDEC_EXPERTSETTINGS *GetDecoderSettingsHandle();
|
||||
AACPLUSDEC_ERROR SetDecoderSettings();
|
||||
|
||||
AACPLUSDEC_STREAMPROPERTIES *GetStreamPropertiesHandle();
|
||||
|
||||
AACPLUSDEC_ERROR StreamFeed(unsigned char *pucBitstrmBufIn, AACPLUSDEC_BITSTREAMBUFFERINFO *hBitstrmBufInfoInOut);
|
||||
AACPLUSDEC_ERROR StreamDecode(void *pPcmAudioBufOut, AACPLUSDEC_AUDIOBUFFERINFO *hPcmAudioBufInfoInOut, unsigned char *pucDataStreamBufOut, AACPLUSDEC_DATASTREAMBUFFERINFO *hDataStreamBufInfoInOut);
|
||||
AACPLUSDEC_ERROR FrameDecode( void *pPcmAudioBufOut,
|
||||
AACPLUSDEC_AUDIOBUFFERINFO *hPcmAudioBufInfoInOut,
|
||||
unsigned char *pucFrameBufferIn,
|
||||
AACPLUSDEC_BITSTREAMBUFFERINFO *hFrameBufferInfoInOut,
|
||||
int bFrameCorrupt,
|
||||
unsigned char *pucDataStreamBufOut,
|
||||
AACPLUSDEC_DATASTREAMBUFFERINFO *hDataStreamBufInfoInOut);
|
||||
};
|
||||
|
||||
inline AACPLUSDEC_ERROR api_aacplusdecoder::EasyOpen(AACPLUSDEC_OUTPUTFORMAT outputFormat, int nMaxAudioChannels)
|
||||
{
|
||||
return _call(AACPLUSDECODER_EASY_OPEN, (AACPLUSDEC_ERROR)AACPLUSDEC_ERROR_GENERALERROR, outputFormat, nMaxAudioChannels);
|
||||
}
|
||||
|
||||
inline void api_aacplusdecoder::Close()
|
||||
{
|
||||
_voidcall(AACPLUSDECODER_CLOSE);
|
||||
}
|
||||
|
||||
inline AACPLUSDEC_ERROR api_aacplusdecoder::Restart()
|
||||
{
|
||||
return _call(AACPLUSDECODER_RESTART, (AACPLUSDEC_ERROR)AACPLUSDEC_ERROR_GENERALERROR);
|
||||
}
|
||||
|
||||
inline AACPLUSDEC_EXPERTSETTINGS *api_aacplusdecoder::GetDecoderSettingsHandle()
|
||||
{
|
||||
return _call(AACPLUSDECODER_GET_DECODER_SETTINGS_HANDLE, (AACPLUSDEC_EXPERTSETTINGS *)0);
|
||||
}
|
||||
|
||||
inline AACPLUSDEC_ERROR api_aacplusdecoder::SetDecoderSettings()
|
||||
{
|
||||
return _call(AACPLUSDECODER_SET_DECODER_SETTINGS, (AACPLUSDEC_ERROR)AACPLUSDEC_ERROR_GENERALERROR);
|
||||
}
|
||||
|
||||
inline AACPLUSDEC_STREAMPROPERTIES *api_aacplusdecoder::GetStreamPropertiesHandle()
|
||||
{
|
||||
return _call(AACPLUSDECODER_GET_STREAM_PROPERTIES_HANDLE, (AACPLUSDEC_STREAMPROPERTIES *)0); }
|
||||
|
||||
inline AACPLUSDEC_ERROR api_aacplusdecoder::StreamFeed(unsigned char *pucBitstrmBufIn, AACPLUSDEC_BITSTREAMBUFFERINFO *hBitstrmBufInfoInOut)
|
||||
{
|
||||
return _call(AACPLUSDECODER_STREAM_FEED, (AACPLUSDEC_ERROR)AACPLUSDEC_ERROR_GENERALERROR, pucBitstrmBufIn, hBitstrmBufInfoInOut);
|
||||
}
|
||||
|
||||
inline AACPLUSDEC_ERROR api_aacplusdecoder::StreamDecode(void *pPcmAudioBufOut, AACPLUSDEC_AUDIOBUFFERINFO *hPcmAudioBufInfoInOut, unsigned char *pucDataStreamBufOut, AACPLUSDEC_DATASTREAMBUFFERINFO *hDataStreamBufInfoInOut)
|
||||
{
|
||||
return _call(AACPLUSDECODER_STREAM_DECODE, (AACPLUSDEC_ERROR)AACPLUSDEC_ERROR_GENERALERROR, pPcmAudioBufOut, hPcmAudioBufInfoInOut, pucDataStreamBufOut, hDataStreamBufInfoInOut);
|
||||
}
|
||||
|
||||
inline AACPLUSDEC_ERROR api_aacplusdecoder::ReadConfigStream(unsigned char *pucConfigStreamBufferIn, AACPLUSDEC_BITSTREAMBUFFERINFO *hConfigStreamBufferInfoInOut, AACPLUSDEC_CONFIGTYPE nConfigTypeIn, int bConfigStreamInBand, AACPLUSDEC_BITSTREAMFORMAT bitstreamFormatIn)
|
||||
{
|
||||
return _call(AACPLUSDECODER_READ_CONFIG_STREAM, (AACPLUSDEC_ERROR)AACPLUSDEC_ERROR_GENERALERROR, pucConfigStreamBufferIn, hConfigStreamBufferInfoInOut, nConfigTypeIn, bConfigStreamInBand, bitstreamFormatIn);
|
||||
}
|
||||
|
||||
inline AACPLUSDEC_ERROR api_aacplusdecoder::FrameDecode(void *pPcmAudioBufOut,
|
||||
AACPLUSDEC_AUDIOBUFFERINFO *hPcmAudioBufInfoInOut,
|
||||
unsigned char *pucFrameBufferIn,
|
||||
AACPLUSDEC_BITSTREAMBUFFERINFO *hFrameBufferInfoInOut,
|
||||
int bFrameCorrupt,
|
||||
unsigned char *pucDataStreamBufOut,
|
||||
AACPLUSDEC_DATASTREAMBUFFERINFO *hDataStreamBufInfoInOut )
|
||||
{
|
||||
return _call(AACPLUSDECODER_FRAME_DECODE, (AACPLUSDEC_ERROR)AACPLUSDEC_ERROR_GENERALERROR, pPcmAudioBufOut,
|
||||
hPcmAudioBufInfoInOut,
|
||||
pucFrameBufferIn,
|
||||
hFrameBufferInfoInOut,
|
||||
bFrameCorrupt, pucDataStreamBufOut,
|
||||
hDataStreamBufInfoInOut );
|
||||
}
|
||||
|
||||
// {257C56BD-90CD-4f1f-9A27-3C73BCCCDE4E}
|
||||
static const GUID aacPlusDecoderGUID=
|
||||
{ 0x257c56bd, 0x90cd, 0x4f1f, { 0x9a, 0x27, 0x3c, 0x73, 0xbc, 0xcc, 0xde, 0x4e } };
|
||||
|
||||
#endif
|
Loading…
Reference in New Issue