mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-28 04:31:06 +00:00
38 lines
1.2 KiB
C
38 lines
1.2 KiB
C
|
#ifndef APE_PREPARE_H
|
||
|
#define APE_PREPARE_H
|
||
|
|
||
|
#define SPECIAL_FRAME_MONO_SILENCE 1
|
||
|
#define SPECIAL_FRAME_LEFT_SILENCE 1
|
||
|
#define SPECIAL_FRAME_RIGHT_SILENCE 2
|
||
|
#define SPECIAL_FRAME_PSEUDO_STEREO 4
|
||
|
|
||
|
/*****************************************************************************
|
||
|
Manage the preparation stage of compression and decompression
|
||
|
|
||
|
Tasks:
|
||
|
|
||
|
1) convert data to 32-bit
|
||
|
2) convert L,R to X,Y
|
||
|
3) calculate the CRC
|
||
|
4) do simple analysis
|
||
|
5) check for the peak value
|
||
|
*****************************************************************************/
|
||
|
|
||
|
class IPredictorDecompress;
|
||
|
|
||
|
class CPrepare
|
||
|
{
|
||
|
public:
|
||
|
|
||
|
int Prepare(unsigned char *pRawData, int nBytes, const WAVEFORMATEX *pWaveFormatEx, int *pOutputX, int *pOutputY, unsigned int *pCRC, int *pSpecialCodes, int *pPeakLevel);
|
||
|
void Unprepare(int X, int Y, const WAVEFORMATEX * pWaveFormatEx, unsigned char * pOutput, unsigned int * pCRC);
|
||
|
|
||
|
|
||
|
#ifdef BACKWARDS_COMPATIBILITY
|
||
|
int UnprepareOld(int *pInputX, int *pInputY, int nBlocks, const WAVEFORMATEX *pWaveFormatEx, unsigned char *pRawData, unsigned int *pCRC, int *pSpecialCodes, int nFileVersion);
|
||
|
#endif
|
||
|
|
||
|
};
|
||
|
|
||
|
#endif /* APE_PREPARE_H */
|