libavcodec/ac3dsp.c File Reference

#include "libavutil/avassert.h"
#include "avcodec.h"
#include "ac3.h"
#include "ac3dsp.h"
#include "mathops.h"

Go to the source code of this file.

Functions

static void ac3_exponent_min_c (uint8_t *exp, int num_reuse_blocks, int nb_coefs)
static int ac3_max_msb_abs_int16_c (const int16_t *src, int len)
static void ac3_lshift_int16_c (int16_t *src, unsigned int len, unsigned int shift)
static void ac3_rshift_int32_c (int32_t *src, unsigned int len, unsigned int shift)
static void float_to_fixed24_c (int32_t *dst, const float *src, unsigned int len)
static void ac3_bit_alloc_calc_bap_c (int16_t *mask, int16_t *psd, int start, int end, int snr_offset, int floor, const uint8_t *bap_tab, uint8_t *bap)
static void ac3_update_bap_counts_c (uint16_t mant_cnt[16], uint8_t *bap, int len)
static int ac3_compute_mantissa_size_c (uint16_t mant_cnt[6][16])
static void ac3_extract_exponents_c (uint8_t *exp, int32_t *coef, int nb_coefs)
static void ac3_sum_square_butterfly_int32_c (int64_t sum[4], const int32_t *coef0, const int32_t *coef1, int len)
static void ac3_sum_square_butterfly_float_c (float sum[4], const float *coef0, const float *coef1, int len)
av_cold void ff_ac3dsp_init (AC3DSPContext *c, int bit_exact)

Variables

const uint16_t ff_ac3_bap_bits [16]
 Number of mantissa bits written for each bap value.


Function Documentation

static void ac3_bit_alloc_calc_bap_c ( int16_t mask,
int16_t psd,
int  start,
int  end,
int  snr_offset,
int  floor,
const uint8_t *  bap_tab,
uint8_t *  bap 
) [static]

Definition at line 107 of file ac3dsp.c.

Referenced by ff_ac3dsp_init().

static int ac3_compute_mantissa_size_c ( uint16_t  mant_cnt[6][16]  )  [static]

Definition at line 143 of file ac3dsp.c.

Referenced by ff_ac3dsp_init().

static void ac3_exponent_min_c ( uint8_t *  exp,
int  num_reuse_blocks,
int  nb_coefs 
) [static]

Definition at line 28 of file ac3dsp.c.

Referenced by ff_ac3dsp_init().

static void ac3_extract_exponents_c ( uint8_t *  exp,
int32_t *  coef,
int  nb_coefs 
) [static]

Definition at line 163 of file ac3dsp.c.

Referenced by ff_ac3dsp_init().

static void ac3_lshift_int16_c ( int16_t src,
unsigned int  len,
unsigned int  shift 
) [static]

Definition at line 56 of file ac3dsp.c.

Referenced by ff_ac3dsp_init().

static int ac3_max_msb_abs_int16_c ( const int16_t src,
int  len 
) [static]

Definition at line 48 of file ac3dsp.c.

Referenced by ff_ac3dsp_init().

static void ac3_rshift_int32_c ( int32_t *  src,
unsigned int  len,
unsigned int  shift 
) [static]

Definition at line 75 of file ac3dsp.c.

Referenced by ff_ac3dsp_init().

static void ac3_sum_square_butterfly_float_c ( float  sum[4],
const float *  coef0,
const float *  coef1,
int  len 
) [static]

Definition at line 194 of file ac3dsp.c.

Referenced by ff_ac3dsp_init().

static void ac3_sum_square_butterfly_int32_c ( int64_t  sum[4],
const int32_t *  coef0,
const int32_t *  coef1,
int  len 
) [static]

Definition at line 173 of file ac3dsp.c.

Referenced by ff_ac3dsp_init().

static void ac3_update_bap_counts_c ( uint16_t  mant_cnt[16],
uint8_t *  bap,
int  len 
) [static]

Definition at line 132 of file ac3dsp.c.

Referenced by ff_ac3dsp_init().

av_cold void ff_ac3dsp_init ( AC3DSPContext c,
int  bit_exact 
)

Definition at line 215 of file ac3dsp.c.

Referenced by ac3_decode_init(), and ff_ac3_encode_init().

static void float_to_fixed24_c ( int32_t *  dst,
const float *  src,
unsigned int  len 
) [static]

Definition at line 91 of file ac3dsp.c.

Referenced by ff_ac3dsp_init().


Variable Documentation

const uint16_t ff_ac3_bap_bits[16]

Initial value:

 {
    0,  0,  0,  3,  0,  4,  5,  6,  7,  8,  9, 10, 11, 12, 14, 16
}
Number of mantissa bits written for each bap value.

bap values with fractional bits are set to 0 and are calculated separately.

Definition at line 139 of file ac3dsp.c.

Referenced by ac3_compute_mantissa_size_c().


Generated on Fri Oct 26 02:43:46 2012 for FFmpeg by  doxygen 1.5.8