FFmpeg
|
#include <stddef.h>
#include "libavutil/avassert.h"
#include "libavutil/common.h"
#include "dcahuff.h"
#include "put_bits.h"
Go to the source code of this file.
Macros | |
#define | TMODE_COUNT 4 |
#define | BITALLOC_12_VLC_BITS 9 |
#define | SCALES_COUNT 5 |
#define | SCALES_VLC_BITS 9 |
#define | DCA_INIT_VLC(vlc, a, b, c, d) |
#define | LBR_INIT_VLC(vlc, tab, nb_bits) |
Functions | |
av_cold void | ff_dca_init_vlcs (void) |
uint32_t | ff_dca_vlc_calc_quant_bits (int *values, uint8_t n, uint8_t sel, uint8_t table) |
void | ff_dca_vlc_enc_quant (PutBitContext *pb, int *values, uint8_t n, uint8_t sel, uint8_t table) |
uint32_t | ff_dca_vlc_calc_alloc_bits (int *values, uint8_t n, uint8_t sel) |
void | ff_dca_vlc_enc_alloc (PutBitContext *pb, int *values, uint8_t n, uint8_t sel) |
Variables | |
static const uint8_t | tmode_vlc_bits [TMODE_COUNT] = { 3, 3, 3, 2 } |
static const uint16_t | tmode_codes [TMODE_COUNT][4] |
static const uint8_t | tmode_bits [TMODE_COUNT][4] |
static const uint8_t | bitalloc_12_vlc_bits [DCA_BITALLOC_12_COUNT] |
static const uint16_t | bitalloc_12_codes [DCA_BITALLOC_12_COUNT][12] |
static const uint8_t | bitalloc_12_bits [DCA_BITALLOC_12_COUNT][12] |
static const uint16_t | scales_codes [SCALES_COUNT][129] |
static const uint8_t | scales_bits [SCALES_COUNT][129] |
static const uint16_t | bitalloc_3_codes [3] |
static const uint8_t | bitalloc_3_bits [3] |
static const uint16_t | bitalloc_5_codes_a [5] |
static const uint16_t | bitalloc_5_codes_b [5] |
static const uint16_t | bitalloc_5_codes_c [5] |
static const uint8_t | bitalloc_5_bits_a [5] |
static const uint8_t | bitalloc_5_bits_b [5] |
static const uint8_t | bitalloc_5_bits_c [5] |
static const uint16_t | bitalloc_7_codes_a [7] |
static const uint16_t | bitalloc_7_codes_b [7] |
static const uint16_t | bitalloc_7_codes_c [7] |
static const uint8_t | bitalloc_7_bits_a [7] |
static const uint8_t | bitalloc_7_bits_b [7] |
static const uint8_t | bitalloc_7_bits_c [7] |
static const uint16_t | bitalloc_9_codes_a [9] |
static const uint16_t | bitalloc_9_codes_b [9] |
static const uint16_t | bitalloc_9_codes_c [9] |
static const uint8_t | bitalloc_9_bits_a [9] |
static const uint8_t | bitalloc_9_bits_b [9] |
static const uint8_t | bitalloc_9_bits_c [9] |
static const uint16_t | bitalloc_13_codes_a [13] |
static const uint16_t | bitalloc_13_codes_b [13] |
static const uint16_t | bitalloc_13_codes_c [13] |
static const uint8_t | bitalloc_13_bits_a [13] |
static const uint8_t | bitalloc_13_bits_b [13] |
static const uint8_t | bitalloc_13_bits_c [13] |
static const uint16_t | bitalloc_17_codes_a [17] |
static const uint16_t | bitalloc_17_codes_b [17] |
static const uint16_t | bitalloc_17_codes_c [17] |
static const uint16_t | bitalloc_17_codes_d [17] |
static const uint16_t | bitalloc_17_codes_e [17] |
static const uint16_t | bitalloc_17_codes_f [17] |
static const uint16_t | bitalloc_17_codes_g [17] |
static const uint8_t | bitalloc_17_bits_a [17] |
static const uint8_t | bitalloc_17_bits_b [17] |
static const uint8_t | bitalloc_17_bits_c [17] |
static const uint8_t | bitalloc_17_bits_d [17] |
static const uint8_t | bitalloc_17_bits_e [17] |
static const uint8_t | bitalloc_17_bits_f [17] |
static const uint8_t | bitalloc_17_bits_g [17] |
static const uint16_t | bitalloc_25_codes_a [25] |
static const uint16_t | bitalloc_25_codes_b [25] |
static const uint16_t | bitalloc_25_codes_c [25] |
static const uint16_t | bitalloc_25_codes_d [25] |
static const uint16_t | bitalloc_25_codes_e [25] |
static const uint16_t | bitalloc_25_codes_f [25] |
static const uint16_t | bitalloc_25_codes_g [25] |
static const uint8_t | bitalloc_25_bits_a [25] |
static const uint8_t | bitalloc_25_bits_b [25] |
static const uint8_t | bitalloc_25_bits_c [25] |
static const uint8_t | bitalloc_25_bits_d [25] |
static const uint8_t | bitalloc_25_bits_e [25] |
static const uint8_t | bitalloc_25_bits_f [25] |
static const uint8_t | bitalloc_25_bits_g [25] |
static const uint16_t | bitalloc_33_codes_a [33] |
static const uint16_t | bitalloc_33_codes_b [33] |
static const uint16_t | bitalloc_33_codes_c [33] |
static const uint16_t | bitalloc_33_codes_d [33] |
static const uint16_t | bitalloc_33_codes_e [33] |
static const uint16_t | bitalloc_33_codes_f [33] |
static const uint16_t | bitalloc_33_codes_g [33] |
static const uint8_t | bitalloc_33_bits_a [33] |
static const uint8_t | bitalloc_33_bits_b [33] |
static const uint8_t | bitalloc_33_bits_c [33] |
static const uint8_t | bitalloc_33_bits_d [33] |
static const uint8_t | bitalloc_33_bits_e [33] |
static const uint8_t | bitalloc_33_bits_f [33] |
static const uint8_t | bitalloc_33_bits_g [33] |
static const uint16_t | bitalloc_65_codes_a [65] |
static const uint16_t | bitalloc_65_codes_b [65] |
static const uint16_t | bitalloc_65_codes_c [65] |
static const uint16_t | bitalloc_65_codes_d [65] |
static const uint16_t | bitalloc_65_codes_e [65] |
static const uint16_t | bitalloc_65_codes_f [65] |
static const uint16_t | bitalloc_65_codes_g [65] |
static const uint8_t | bitalloc_65_bits_a [65] |
static const uint8_t | bitalloc_65_bits_b [65] |
static const uint8_t | bitalloc_65_bits_c [65] |
static const uint8_t | bitalloc_65_bits_d [65] |
static const uint8_t | bitalloc_65_bits_e [65] |
static const uint8_t | bitalloc_65_bits_f [65] |
static const uint8_t | bitalloc_65_bits_g [65] |
static const uint16_t | bitalloc_129_codes_a [129] |
static const uint16_t | bitalloc_129_codes_b [129] |
static const uint16_t | bitalloc_129_codes_c [129] |
static const uint16_t | bitalloc_129_codes_d [129] |
static const uint16_t | bitalloc_129_codes_e [129] |
static const uint16_t | bitalloc_129_codes_f [129] |
static const uint16_t | bitalloc_129_codes_g [129] |
static const uint8_t | bitalloc_129_bits_a [129] |
static const uint8_t | bitalloc_129_bits_b [129] |
static const uint8_t | bitalloc_129_bits_c [129] |
static const uint8_t | bitalloc_129_bits_d [129] |
static const uint8_t | bitalloc_129_bits_e [129] |
static const uint8_t | bitalloc_129_bits_f [129] |
static const uint8_t | bitalloc_129_bits_g [129] |
static const uint8_t | bitalloc_sizes [DCA_CODE_BOOKS] |
static const int8_t | bitalloc_offsets [DCA_CODE_BOOKS] |
static const uint8_t | bitalloc_maxbits [DCA_CODE_BOOKS][7] |
static const uint16_t *const | bitalloc_codes [DCA_CODE_BOOKS][8] |
static const uint8_t *const | bitalloc_bits [DCA_CODE_BOOKS][8] |
static const uint16_t | tnl_grp_0_codes [37] |
static const uint16_t | tnl_grp_1_codes [34] |
static const uint16_t | tnl_grp_2_codes [31] |
static const uint16_t | tnl_grp_3_codes [28] |
static const uint16_t | tnl_grp_4_codes [23] |
static const uint16_t | tnl_scf_codes [20] |
static const uint16_t | damp_codes [7] |
static const uint16_t | dph_codes [9] |
static const uint16_t | fst_rsd_amp_codes [24] |
static const uint16_t | rsd_apprx_codes [6] |
static const uint16_t | rsd_amp_codes [33] |
static const uint16_t | avg_g3_codes [18] |
static const uint16_t | st_grid_codes [22] |
static const uint16_t | grid_2_codes [20] |
static const uint16_t | grid_3_codes [13] |
static const uint16_t | rsd_codes [9] |
static const uint8_t | tnl_grp_0_bitvals [74] |
static const uint8_t | tnl_grp_1_bitvals [68] |
static const uint8_t | tnl_grp_2_bitvals [62] |
static const uint8_t | tnl_grp_3_bitvals [56] |
static const uint8_t | tnl_grp_4_bitvals [46] |
static const uint8_t | tnl_scf_bitvals [40] |
static const uint8_t | damp_bitvals [14] |
static const uint8_t | dph_bitvals [18] |
static const uint8_t | fst_rsd_amp_bitvals [48] |
static const uint8_t | rsd_apprx_bitvals [12] |
static const uint8_t | rsd_amp_bitvals [66] |
static const uint8_t | avg_g3_bitvals [36] |
static const uint8_t | st_grid_bitvals [44] |
static const uint8_t | grid_2_bitvals [40] |
static const uint8_t | grid_3_bitvals [26] |
static const uint8_t | rsd_bitvals [18] |
static const uint16_t | vlc_offs [80] |
DCAVLC | ff_dca_vlc_bit_allocation |
DCAVLC | ff_dca_vlc_transition_mode |
DCAVLC | ff_dca_vlc_scale_factor |
DCAVLC | ff_dca_vlc_quant_index [DCA_CODE_BOOKS] |
VLC | ff_dca_vlc_tnl_grp [5] |
VLC | ff_dca_vlc_tnl_scf |
VLC | ff_dca_vlc_damp |
VLC | ff_dca_vlc_dph |
VLC | ff_dca_vlc_fst_rsd_amp |
VLC | ff_dca_vlc_rsd_apprx |
VLC | ff_dca_vlc_rsd_amp |
VLC | ff_dca_vlc_avg_g3 |
VLC | ff_dca_vlc_st_grid |
VLC | ff_dca_vlc_grid_2 |
VLC | ff_dca_vlc_grid_3 |
VLC | ff_dca_vlc_rsd |
#define LBR_INIT_VLC | ( | vlc, | |
tab, | |||
nb_bits | |||
) |
av_cold void ff_dca_init_vlcs | ( | void | ) |
Definition at line 1265 of file dcahuff.c.
Referenced by dcadec_init_static().
uint32_t ff_dca_vlc_calc_quant_bits | ( | int * | values, |
uint8_t | n, | ||
uint8_t | sel, | ||
uint8_t | table | ||
) |
Definition at line 1334 of file dcahuff.c.
Referenced by accumulate_huff_bit_consumption().
void ff_dca_vlc_enc_quant | ( | PutBitContext * | pb, |
int * | values, | ||
uint8_t | n, | ||
uint8_t | sel, | ||
uint8_t | table | ||
) |
Definition at line 1346 of file dcahuff.c.
Referenced by put_subframe_samples().
uint32_t ff_dca_vlc_calc_alloc_bits | ( | int * | values, |
uint8_t | n, | ||
uint8_t | sel | ||
) |
Definition at line 1356 of file dcahuff.c.
Referenced by set_best_abits_code().
void ff_dca_vlc_enc_alloc | ( | PutBitContext * | pb, |
int * | values, | ||
uint8_t | n, | ||
uint8_t | sel | ||
) |
Definition at line 1367 of file dcahuff.c.
Referenced by put_subframe().
|
static |
Definition at line 32 of file dcahuff.c.
Referenced by ff_dca_init_vlcs().
|
static |
Definition at line 33 of file dcahuff.c.
Referenced by ff_dca_init_vlcs().
|
static |
Definition at line 40 of file dcahuff.c.
Referenced by ff_dca_init_vlcs().
|
static |
Definition at line 48 of file dcahuff.c.
Referenced by ff_dca_init_vlcs().
|
static |
Definition at line 52 of file dcahuff.c.
Referenced by ff_dca_init_vlcs(), and ff_dca_vlc_enc_alloc().
|
static |
Definition at line 65 of file dcahuff.c.
Referenced by ff_dca_init_vlcs(), ff_dca_vlc_calc_alloc_bits(), and ff_dca_vlc_enc_alloc().
|
static |
Definition at line 75 of file dcahuff.c.
Referenced by ff_dca_init_vlcs().
|
static |
Definition at line 163 of file dcahuff.c.
Referenced by ff_dca_init_vlcs().
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
Definition at line 985 of file dcahuff.c.
Referenced by ff_dca_init_vlcs(), ff_dca_vlc_calc_quant_bits(), and ff_dca_vlc_enc_quant().
|
static |
Definition at line 989 of file dcahuff.c.
Referenced by ff_dca_init_vlcs(), ff_dca_vlc_calc_quant_bits(), and ff_dca_vlc_enc_quant().
|
static |
Definition at line 993 of file dcahuff.c.
Referenced by ff_dca_init_vlcs().
|
static |
Definition at line 1006 of file dcahuff.c.
Referenced by ff_dca_init_vlcs(), and ff_dca_vlc_enc_quant().
|
static |
Definition at line 1024 of file dcahuff.c.
Referenced by ff_dca_init_vlcs(), ff_dca_vlc_calc_quant_bits(), and ff_dca_vlc_enc_quant().
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
DCAVLC ff_dca_vlc_bit_allocation |
Definition at line 1247 of file dcahuff.c.
Referenced by ff_dca_init_vlcs(), and parse_subframe_header().
DCAVLC ff_dca_vlc_transition_mode |
Definition at line 1248 of file dcahuff.c.
Referenced by ff_dca_init_vlcs(), and parse_subframe_header().
DCAVLC ff_dca_vlc_scale_factor |
Definition at line 1249 of file dcahuff.c.
Referenced by ff_dca_init_vlcs(), parse_joint_scale(), and parse_scale().
DCAVLC ff_dca_vlc_quant_index[DCA_CODE_BOOKS] |
Definition at line 1250 of file dcahuff.c.
Referenced by ff_dca_init_vlcs(), parse_huffman_codes(), and parse_x96_subframe_header().
VLC ff_dca_vlc_tnl_grp[5] |
Definition at line 1252 of file dcahuff.c.
Referenced by ff_dca_init_vlcs(), and parse_tonal().
VLC ff_dca_vlc_tnl_scf |
Definition at line 1253 of file dcahuff.c.
Referenced by ff_dca_init_vlcs(), and parse_tonal().
VLC ff_dca_vlc_damp |
Definition at line 1254 of file dcahuff.c.
Referenced by ff_dca_init_vlcs(), and parse_tonal().
VLC ff_dca_vlc_dph |
Definition at line 1255 of file dcahuff.c.
Referenced by ff_dca_init_vlcs(), and parse_tonal().
VLC ff_dca_vlc_fst_rsd_amp |
Definition at line 1256 of file dcahuff.c.
Referenced by ff_dca_init_vlcs(), and parse_scale_factors().
VLC ff_dca_vlc_rsd_apprx |
Definition at line 1257 of file dcahuff.c.
Referenced by ff_dca_init_vlcs(), and parse_scale_factors().
VLC ff_dca_vlc_rsd_amp |
Definition at line 1258 of file dcahuff.c.
Referenced by ff_dca_init_vlcs(), and parse_scale_factors().
VLC ff_dca_vlc_avg_g3 |
Definition at line 1259 of file dcahuff.c.
Referenced by ff_dca_init_vlcs(), parse_grid_1_chunk(), and parse_grid_1_sec_ch().
VLC ff_dca_vlc_st_grid |
Definition at line 1260 of file dcahuff.c.
Referenced by ff_dca_init_vlcs(), and parse_st_code().
VLC ff_dca_vlc_grid_2 |
Definition at line 1261 of file dcahuff.c.
Referenced by ff_dca_init_vlcs(), and parse_grid_2().
VLC ff_dca_vlc_grid_3 |
Definition at line 1262 of file dcahuff.c.
Referenced by ff_dca_init_vlcs(), and parse_grid_3().
VLC ff_dca_vlc_rsd |
Definition at line 1263 of file dcahuff.c.
Referenced by ff_dca_init_vlcs(), and parse_ch().