mirror of
https://github.com/WinampDesktop/winamp.git
synced 2025-06-18 13:55:46 -04:00
Initial community commit
This commit is contained in:
127
Src/aacdec/incs/mp4dec_asc/audiospecificconfig_c.h
Normal file
127
Src/aacdec/incs/mp4dec_asc/audiospecificconfig_c.h
Normal file
@ -0,0 +1,127 @@
|
||||
/***************************************************************************\
|
||||
*
|
||||
* (C) copyright Fraunhofer - IIS (1998)
|
||||
* All Rights Reserved
|
||||
*
|
||||
* $Header: /cvs/root/winamp/aacdec/incs/mp4dec_asc/audiospecificconfig_c.h,v 1.3 2012/05/08 20:16:50 audiodsp Exp $
|
||||
* project : MPEG-4 Audio Decoder
|
||||
* contents/description: interface to audioSpecificConfig
|
||||
*
|
||||
* 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 __AUDIOSPECIFICCONFIG_C_H__
|
||||
#define __AUDIOSPECIFICCONFIG_C_H__
|
||||
|
||||
#include "mp4dec_asc/audioobjecttypes.h"
|
||||
#include "mp4dec_asc/gaspecificconfig_c.h"
|
||||
#include "mp4dec_asc/celpspecificconfig_c.h"
|
||||
#include "mp4dec_asc/hvxcspecificconfig_c.h"
|
||||
#include "mp4dec_asc/spatialspecificconfig_c.h"
|
||||
#include "mp4dec_asc/slsspecificconfig_c.h"
|
||||
#include "mp4dec_asc/mpeg12specificconfig_c.h"
|
||||
#include "mp4dec_asc/epspecificconfig_c.h"
|
||||
#include "mp4dec_asc/eldspecificconfig_c.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif /* __cplusplus */
|
||||
|
||||
struct CSBitStream;
|
||||
|
||||
typedef struct CSAudioSpecificConfig {
|
||||
|
||||
AUDIO_OBJECT_TYPE m_aot;
|
||||
AUDIO_OBJECT_TYPE m_origAot;
|
||||
unsigned int m_samplingFrequencyIndex;
|
||||
unsigned int m_samplingFrequency;
|
||||
int m_channelConfiguration;
|
||||
int m_epConfig;
|
||||
unsigned int m_directMapping;
|
||||
|
||||
/* SBR/PS extension */
|
||||
int m_sbrPresentFlag;
|
||||
int m_psPresentFlag;
|
||||
int m_mpsPresentFlag;
|
||||
int m_saocPresentFlag;
|
||||
int m_ldmpsPresentFlag;
|
||||
AUDIO_OBJECT_TYPE m_extensionAudioObjectType;
|
||||
unsigned int m_extensionSamplingFrequencyIndex;
|
||||
unsigned int m_extensionSamplingFrequency;
|
||||
|
||||
/* */
|
||||
unsigned int m_nrOfStreams;
|
||||
unsigned int m_avgBitRate;
|
||||
unsigned int m_layer;
|
||||
|
||||
/* derived values */
|
||||
int m_channels;
|
||||
unsigned int m_samplesPerFrame;
|
||||
|
||||
/* aot-specific asc's */
|
||||
CSGaSpecificConfig m_gaSpecificConfig;
|
||||
CSCelpSpecificConfig m_celpSpecificConfig;
|
||||
HvxcSpecificConfig m_hvxcSpecificConfig;
|
||||
CSSpatialSpecificConfig m_mpegsSpecificConfig;
|
||||
CSSpatialSpecificConfig m_saocSpecificConfig;
|
||||
CSSpatialSpecificConfig m_ldmpegsSpecificConfig;
|
||||
CSMpeg12SpecificConfig m_mpeg12SpecificConfig;
|
||||
CSSlsSpecificConfig m_slsSpecificConfig;
|
||||
CSEldSpecificConfig m_eldSpecificConfig;
|
||||
CEpSpecificConfig m_epSpecificConfig;
|
||||
|
||||
} CSAudioSpecificConfig, *CSAudioSpecificConfigPtr;
|
||||
|
||||
int AudioSpecificConfig_ParseLatm_amv0(
|
||||
CSAudioSpecificConfigPtr self,
|
||||
struct CSBitStream *bs
|
||||
);
|
||||
|
||||
int AudioSpecificConfig_ParseLatm_amv1(
|
||||
CSAudioSpecificConfigPtr self,
|
||||
struct CSBitStream *bs
|
||||
);
|
||||
|
||||
int AudioSpecificConfig_ParseExt(
|
||||
CSAudioSpecificConfigPtr self,
|
||||
CSAudioSpecificConfigPtr baselayer,
|
||||
struct CSBitStream *bs,
|
||||
unsigned int streamsPerLayer,
|
||||
unsigned int avgBitrate,
|
||||
unsigned int latm_flag
|
||||
);
|
||||
|
||||
void AudioSpecificConfig_Copy(
|
||||
CSAudioSpecificConfigPtr self,
|
||||
const CSAudioSpecificConfigPtr asc
|
||||
);
|
||||
|
||||
int AudioSpecificConfig_Compare(
|
||||
const CSAudioSpecificConfigPtr self,
|
||||
const CSAudioSpecificConfigPtr asc
|
||||
);
|
||||
|
||||
#ifdef ASC_PRINT
|
||||
int AudioSpecificConfig_Print(
|
||||
const CSAudioSpecificConfigPtr asc,
|
||||
char string[]
|
||||
);
|
||||
#endif
|
||||
|
||||
AUDIO_OBJECT_TYPE __GetAotFromAsc(CSAudioSpecificConfigPtr asc);
|
||||
int __GetLayerFromAsc(
|
||||
CSAudioSpecificConfigPtr asc,
|
||||
CSAudioSpecificConfigPtr asc_base
|
||||
);
|
||||
char* __GetAotString(AUDIO_OBJECT_TYPE aot);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* __AUDIOSPECIFICCONFIG_H__ */
|
Reference in New Issue
Block a user