FFmpeg
|
Go to the source code of this file.
Data Structures | |
struct | RawBitsContext |
struct | OpusRangeCoder |
Macros | |
#define | opus_ilog(i) (av_log2(i) + !!(i)) |
#define | OPUS_RC_CHECKPOINT_UPDATE(rc) |
#define | OPUS_RC_CHECKPOINT_SPAWN(rc) |
#define | OPUS_RC_CHECKPOINT_BITS(rc) (opus_rc_tell_frac(rc) - rc_rollback_bits) |
#define | OPUS_RC_CHECKPOINT_ROLLBACK(rc) memcpy(rc, &rc_rollback_ctx, sizeof(OpusRangeCoder)); \ |
Functions | |
static av_always_inline uint32_t | opus_rc_tell (const OpusRangeCoder *rc) |
CELT: estimate bits of entropy that have thus far been consumed for the current CELT frame, to integer and fractional (1/8th bit) precision. More... | |
static av_always_inline uint32_t | opus_rc_tell_frac (const OpusRangeCoder *rc) |
uint32_t | ff_opus_rc_dec_cdf (OpusRangeCoder *rc, const uint16_t *cdf) |
void | ff_opus_rc_enc_cdf (OpusRangeCoder *rc, int val, const uint16_t *cdf) |
uint32_t | ff_opus_rc_dec_log (OpusRangeCoder *rc, uint32_t bits) |
void | ff_opus_rc_enc_log (OpusRangeCoder *rc, int val, uint32_t bits) |
uint32_t | ff_opus_rc_dec_uint_step (OpusRangeCoder *rc, int k0) |
void | ff_opus_rc_enc_uint_step (OpusRangeCoder *rc, uint32_t val, int k0) |
uint32_t | ff_opus_rc_dec_uint_tri (OpusRangeCoder *rc, int qn) |
void | ff_opus_rc_enc_uint_tri (OpusRangeCoder *rc, uint32_t k, int qn) |
uint32_t | ff_opus_rc_dec_uint (OpusRangeCoder *rc, uint32_t size) |
CELT: read a uniform distribution. More... | |
void | ff_opus_rc_enc_uint (OpusRangeCoder *rc, uint32_t val, uint32_t size) |
CELT: write a uniformly distributed integer. More... | |
uint32_t | ff_opus_rc_get_raw (OpusRangeCoder *rc, uint32_t count) |
CELT: read 1-25 raw bits at the end of the frame, backwards byte-wise. More... | |
void | ff_opus_rc_put_raw (OpusRangeCoder *rc, uint32_t val, uint32_t count) |
CELT: write 0 - 31 bits to the rawbits buffer. More... | |
int | ff_opus_rc_dec_laplace (OpusRangeCoder *rc, uint32_t symbol, int decay) |
void | ff_opus_rc_enc_laplace (OpusRangeCoder *rc, int *value, uint32_t symbol, int decay) |
int | ff_opus_rc_dec_init (OpusRangeCoder *rc, const uint8_t *data, int size) |
void | ff_opus_rc_dec_raw_init (OpusRangeCoder *rc, const uint8_t *rightend, uint32_t bytes) |
void | ff_opus_rc_enc_end (OpusRangeCoder *rc, uint8_t *dst, int size) |
void | ff_opus_rc_enc_init (OpusRangeCoder *rc) |
#define OPUS_RC_CHECKPOINT_UPDATE | ( | rc | ) |
#define OPUS_RC_CHECKPOINT_SPAWN | ( | rc | ) |
#define OPUS_RC_CHECKPOINT_BITS | ( | rc | ) | (opus_rc_tell_frac(rc) - rc_rollback_bits) |
#define OPUS_RC_CHECKPOINT_ROLLBACK | ( | rc | ) | memcpy(rc, &rc_rollback_ctx, sizeof(OpusRangeCoder)); \ |
|
static |
CELT: estimate bits of entropy that have thus far been consumed for the current CELT frame, to integer and fractional (1/8th bit) precision.
Definition at line 60 of file opus_rc.h.
Referenced by celt_decode_coarse_energy(), celt_decode_final_energy(), celt_decode_tf_changes(), celt_enc_quant_pfilter(), celt_enc_tf(), celt_encode_frame(), celt_quant_final(), exp_quant_coarse(), ff_celt_bitalloc(), ff_celt_decode_frame(), opus_decode_frame(), and parse_postfilter().
|
static |
Definition at line 65 of file opus_rc.h.
Referenced by ff_celt_bitalloc(), ff_celt_quant_bands(), pvq_band_cost(), and quant_band_template().
uint32_t ff_opus_rc_dec_cdf | ( | OpusRangeCoder * | rc, |
const uint16_t * | cdf | ||
) |
Definition at line 90 of file opus_rc.c.
Referenced by celt_decode_coarse_energy(), ff_celt_bitalloc(), ff_silk_decode_superframe(), parse_postfilter(), silk_count_children(), silk_decode_excitation(), silk_decode_frame(), and silk_decode_lpc().
void ff_opus_rc_enc_cdf | ( | OpusRangeCoder * | rc, |
int | val, | ||
const uint16_t * | cdf | ||
) |
Definition at line 109 of file opus_rc.c.
Referenced by celt_enc_quant_pfilter(), exp_quant_coarse(), and ff_celt_bitalloc().
uint32_t ff_opus_rc_dec_log | ( | OpusRangeCoder * | rc, |
uint32_t | bits | ||
) |
Definition at line 114 of file opus_rc.c.
Referenced by celt_decode_coarse_energy(), celt_decode_tf_changes(), ff_celt_bitalloc(), ff_celt_decode_frame(), ff_silk_decode_superframe(), opus_decode_frame(), parse_postfilter(), and quant_band_template().
void ff_opus_rc_enc_log | ( | OpusRangeCoder * | rc, |
int | val, | ||
uint32_t | bits | ||
) |
Definition at line 131 of file opus_rc.c.
Referenced by celt_enc_quant_pfilter(), celt_enc_tf(), celt_encode_frame(), exp_quant_coarse(), ff_celt_bitalloc(), and quant_band_template().
uint32_t ff_opus_rc_dec_uint_step | ( | OpusRangeCoder * | rc, |
int | k0 | ||
) |
Definition at line 211 of file opus_rc.c.
Referenced by quant_band_template().
void ff_opus_rc_enc_uint_step | ( | OpusRangeCoder * | rc, |
uint32_t | val, | ||
int | k0 | ||
) |
Definition at line 226 of file opus_rc.c.
Referenced by quant_band_template().
uint32_t ff_opus_rc_dec_uint_tri | ( | OpusRangeCoder * | rc, |
int | qn | ||
) |
Definition at line 234 of file opus_rc.c.
Referenced by quant_band_template().
void ff_opus_rc_enc_uint_tri | ( | OpusRangeCoder * | rc, |
uint32_t | k, | ||
int | qn | ||
) |
Definition at line 258 of file opus_rc.c.
Referenced by quant_band_template().
uint32_t ff_opus_rc_dec_uint | ( | OpusRangeCoder * | rc, |
uint32_t | size | ||
) |
CELT: read a uniform distribution.
Definition at line 182 of file opus_rc.c.
Referenced by celt_decode_pulses(), ff_celt_bitalloc(), opus_decode_frame(), parse_postfilter(), and quant_band_template().
void ff_opus_rc_enc_uint | ( | OpusRangeCoder * | rc, |
uint32_t | val, | ||
uint32_t | size | ||
) |
CELT: write a uniformly distributed integer.
Definition at line 204 of file opus_rc.c.
Referenced by celt_enc_quant_pfilter(), celt_encode_pulses(), ff_celt_bitalloc(), and quant_band_template().
uint32_t ff_opus_rc_get_raw | ( | OpusRangeCoder * | rc, |
uint32_t | count | ||
) |
CELT: read 1-25 raw bits at the end of the frame, backwards byte-wise.
Definition at line 140 of file opus_rc.c.
Referenced by celt_decode_final_energy(), celt_decode_fine_energy(), ff_celt_decode_frame(), ff_opus_rc_dec_uint(), parse_postfilter(), and quant_band_template().
void ff_opus_rc_put_raw | ( | OpusRangeCoder * | rc, |
uint32_t | val, | ||
uint32_t | count | ||
) |
CELT: write 0 - 31 bits to the rawbits buffer.
Definition at line 161 of file opus_rc.c.
Referenced by celt_enc_quant_pfilter(), celt_encode_frame(), celt_quant_final(), celt_quant_fine(), ff_opus_rc_enc_end(), ff_opus_rc_enc_uint(), and quant_band_template().
int ff_opus_rc_dec_laplace | ( | OpusRangeCoder * | rc, |
uint32_t | symbol, | ||
int | decay | ||
) |
Definition at line 275 of file opus_rc.c.
Referenced by celt_decode_coarse_energy().
void ff_opus_rc_enc_laplace | ( | OpusRangeCoder * | rc, |
int * | value, | ||
uint32_t | symbol, | ||
int | decay | ||
) |
Definition at line 314 of file opus_rc.c.
Referenced by exp_quant_coarse().
int ff_opus_rc_dec_init | ( | OpusRangeCoder * | rc, |
const uint8_t * | data, | ||
int | size | ||
) |
Definition at line 338 of file opus_rc.c.
Referenced by opus_decode_frame(), and opus_decode_redundancy().
void ff_opus_rc_dec_raw_init | ( | OpusRangeCoder * | rc, |
const uint8_t * | rightend, | ||
uint32_t | bytes | ||
) |
Definition at line 352 of file opus_rc.c.
Referenced by ff_opus_rc_enc_init(), opus_decode_frame(), and opus_decode_redundancy().
void ff_opus_rc_enc_end | ( | OpusRangeCoder * | rc, |
uint8_t * | dst, | ||
int | size | ||
) |
Definition at line 360 of file opus_rc.c.
Referenced by opus_packet_assembler().
void ff_opus_rc_enc_init | ( | OpusRangeCoder * | rc | ) |
Definition at line 402 of file opus_rc.c.
Referenced by bands_dist(), and celt_encode_frame().