FFmpeg
Macros
aacenc_quantization.h File Reference

AAC encoder quantizer. More...

#include "aactab.h"
#include "aacenc.h"
#include "aacenctab.h"
#include "aacenc_utils.h"
#include "aacenc_quantization_misc.h"

Go to the source code of this file.

Macros

#define QUANTIZE_AND_ENCODE_BAND_COST_FUNC(NAME, BT_ZERO, BT_UNSIGNED, BT_PAIR, BT_ESC, BT_NOISE, BT_STEREO, ROUNDING)
 
#define quantize_and_encode_band_cost( s, pb, in, quant, scaled, size, scale_idx, cb, lambda, uplim, bits, energy, rtz)
 

Detailed Description

AAC encoder quantizer.

Author
Rostislav Pehlivanov ( atomnuker gmail com )

Macro Definition Documentation

§ quantize_and_encode_band_cost

#define quantize_and_encode_band_cost (   s,
  pb,
  in,
  quant,
  scaled,
  size,
  scale_idx,
  cb,
  lambda,
  uplim,
  bits,
  energy,
  rtz 
)
Value:
((rtz) ? quantize_and_encode_band_cost_rtz_arr : quantize_and_encode_band_cost_arr)[cb]( \
s, pb, in, quant, scaled, size, scale_idx, cb, \
lambda, uplim, bits, energy)

§ QUANTIZE_AND_ENCODE_BAND_COST_FUNC

#define QUANTIZE_AND_ENCODE_BAND_COST_FUNC (   NAME,
  BT_ZERO,
  BT_UNSIGNED,
  BT_PAIR,
  BT_ESC,
  BT_NOISE,
  BT_STEREO,
  ROUNDING 
)
Value:
static float quantize_and_encode_band_cost_ ## NAME( \
struct AACEncContext *s, \
PutBitContext *pb, const float *in, float *quant, \
const float *scaled, int size, int scale_idx, \
int cb, const float lambda, const float uplim, \
int *bits, float *energy) { \
return quantize_and_encode_band_cost_template( \
s, pb, in, quant, scaled, size, scale_idx, \
BT_ESC ? ESC_BT : cb, lambda, uplim, bits, energy, \
BT_ZERO, BT_UNSIGNED, BT_PAIR, BT_ESC, BT_NOISE, BT_STEREO, \
ROUNDING); \
}
Definition: put_bits.h:35
AAC encoder context.
Definition: aacenc.h:376
Spectral data are coded with an escape sequence.
Definition: aac.h:85