CI130X SDK API手册  2.2.0
本手册用于描述CI130X SDK各个组件和驱动API
宏定义 | 函数
aachuffman.c 文件参考
#include "aaccoder.h"

宏定义

#define APPLY_SIGN(v, s)   {(v) ^= ((signed int)(s) >> 31); (v) -= ((signed int)(s) >> 31);}
 
#define GET_QUAD_SIGNBITS(v)   (((unsigned int)(v) << 17) >> 29) /* bits 14-12, unsigned */
 
#define GET_QUAD_W(v)   (((signed int)(v) << 20) >> 29) /* bits 11-9, sign-extend */
 
#define GET_QUAD_X(v)   (((signed int)(v) << 23) >> 29) /* bits 8-6, sign-extend */
 
#define GET_QUAD_Y(v)   (((signed int)(v) << 26) >> 29) /* bits 5-3, sign-extend */
 
#define GET_QUAD_Z(v)   (((signed int)(v) << 29) >> 29) /* bits 2-0, sign-extend */
 
#define GET_PAIR_SIGNBITS(v)   (((unsigned int)(v) << 20) >> 30) /* bits 11-10, unsigned */
 
#define GET_PAIR_Y(v)   (((signed int)(v) << 22) >> 27) /* bits 9-5, sign-extend */
 
#define GET_PAIR_Z(v)   (((signed int)(v) << 27) >> 27) /* bits 4-0, sign-extend */
 
#define GET_ESC_SIGNBITS(v)   (((unsigned int)(v) << 18) >> 30) /* bits 13-12, unsigned */
 
#define GET_ESC_Y(v)   (((signed int)(v) << 20) >> 26) /* bits 11-6, sign-extend */
 
#define GET_ESC_Z(v)   (((signed int)(v) << 26) >> 26) /* bits 5-0, sign-extend */
 

函数

int STATNAME() DecodeHuffmanScalar (const signed short *huffTab, const HuffInfo *huffTabInfo, unsigned int bitBuf, signed int *val)
 
static void UnpackZeros (int nVals, int *coef)
 
static void UnpackQuads (BitStreamInfo *bsi, int cb, int nVals, int *coef)
 
static void UnpackPairsNoEsc (BitStreamInfo *bsi, int cb, int nVals, int *coef)
 
static void UnpackPairsEsc (BitStreamInfo *bsi, int cb, int nVals, int *coef)
 
void STATNAME() DecodeSpectrumLong (PSInfoBase *psi, BitStreamInfo *bsi, int ch)
 
void STATNAME() DecodeSpectrumShort (PSInfoBase *psi, BitStreamInfo *bsi, int ch)
 

宏定义说明

◆ APPLY_SIGN

#define APPLY_SIGN (   v,
 
)    {(v) ^= ((signed int)(s) >> 31); (v) -= ((signed int)(s) >> 31);}

◆ GET_ESC_SIGNBITS

#define GET_ESC_SIGNBITS (   v)    (((unsigned int)(v) << 18) >> 30) /* bits 13-12, unsigned */

◆ GET_ESC_Y

#define GET_ESC_Y (   v)    (((signed int)(v) << 20) >> 26) /* bits 11-6, sign-extend */

◆ GET_ESC_Z

#define GET_ESC_Z (   v)    (((signed int)(v) << 26) >> 26) /* bits 5-0, sign-extend */

◆ GET_PAIR_SIGNBITS

#define GET_PAIR_SIGNBITS (   v)    (((unsigned int)(v) << 20) >> 30) /* bits 11-10, unsigned */

◆ GET_PAIR_Y

#define GET_PAIR_Y (   v)    (((signed int)(v) << 22) >> 27) /* bits 9-5, sign-extend */

◆ GET_PAIR_Z

#define GET_PAIR_Z (   v)    (((signed int)(v) << 27) >> 27) /* bits 4-0, sign-extend */

◆ GET_QUAD_SIGNBITS

#define GET_QUAD_SIGNBITS (   v)    (((unsigned int)(v) << 17) >> 29) /* bits 14-12, unsigned */

◆ GET_QUAD_W

#define GET_QUAD_W (   v)    (((signed int)(v) << 20) >> 29) /* bits 11-9, sign-extend */

◆ GET_QUAD_X

#define GET_QUAD_X (   v)    (((signed int)(v) << 23) >> 29) /* bits 8-6, sign-extend */

◆ GET_QUAD_Y

#define GET_QUAD_Y (   v)    (((signed int)(v) << 26) >> 29) /* bits 5-3, sign-extend */

◆ GET_QUAD_Z

#define GET_QUAD_Z (   v)    (((signed int)(v) << 29) >> 29) /* bits 2-0, sign-extend */

函数说明

◆ DecodeHuffmanScalar()

int STATNAME() DecodeHuffmanScalar ( const signed short *  huffTab,
const HuffInfo huffTabInfo,
unsigned int  bitBuf,
signed int *  val 
)

◆ DecodeSpectrumLong()

void STATNAME() DecodeSpectrumLong ( PSInfoBase psi,
BitStreamInfo bsi,
int  ch 
)

◆ DecodeSpectrumShort()

void STATNAME() DecodeSpectrumShort ( PSInfoBase psi,
BitStreamInfo bsi,
int  ch 
)

◆ UnpackPairsEsc()

static void UnpackPairsEsc ( BitStreamInfo bsi,
int  cb,
int  nVals,
int *  coef 
)
static

◆ UnpackPairsNoEsc()

static void UnpackPairsNoEsc ( BitStreamInfo bsi,
int  cb,
int  nVals,
int *  coef 
)
static

◆ UnpackQuads()

static void UnpackQuads ( BitStreamInfo bsi,
int  cb,
int  nVals,
int *  coef 
)
static

◆ UnpackZeros()

static void UnpackZeros ( int  nVals,
int *  coef 
)
static