FFmpeg
4.0
|
AAC encoder utilities. More...
Go to the source code of this file.
Macros | |
#define | ROUND_STANDARD 0.4054f |
#define | ROUND_TO_ZERO 0.1054f |
#define | C_QUANT 0.4054f |
#define | ERROR_IF(cond, ...) |
#define | WARN_IF(cond, ...) |
Functions | |
static void | abs_pow34_v (float *out, const float *in, const int size) |
static float | pos_pow34 (float a) |
static int | quant (float coef, const float Q, const float rounding) |
Quantize one coefficient. More... | |
static void | quantize_bands (int *out, const float *in, const float *scaled, int size, int is_signed, int maxval, const float Q34, const float rounding) |
static float | find_max_val (int group_len, int swb_size, const float *scaled) |
static int | find_min_book (float maxval, int sf) |
static float | find_form_factor (int group_len, int swb_size, float thresh, const float *scaled, float nzslope) |
static uint8_t | coef2minsf (float coef) |
Return the minimum scalefactor where the quantized coef does not clip. More... | |
static uint8_t | coef2maxsf (float coef) |
Return the maximum scalefactor where the quantized coef is not zero. More... | |
static int | quant_array_idx (const float val, const float *arr, const int num) |
static av_always_inline float | bval2bmax (float b) |
approximates exp10f(-3.0f*(0.5f + 0.5f * cosf(FFMIN(b,15.5f) / 15.5f))) More... | |
static void | ff_init_nextband_map (const SingleChannelElement *sce, uint8_t *nextband) |
static void | ff_nextband_remove (uint8_t *nextband, int prevband, int band) |
static int | ff_sfdelta_can_remove_band (const SingleChannelElement *sce, const uint8_t *nextband, int prev_sf, int band) |
static int | ff_sfdelta_can_replace (const SingleChannelElement *sce, const uint8_t *nextband, int prev_sf, int new_sf, int band) |
static av_always_inline int | lcg_random (unsigned previous_val) |
linear congruential pseudorandom number generator More... | |
AAC encoder utilities.
Definition in file aacenc_utils.h.
#define ROUND_STANDARD 0.4054f |
Definition at line 36 of file aacenc_utils.h.
#define ROUND_TO_ZERO 0.1054f |
Definition at line 37 of file aacenc_utils.h.
#define C_QUANT 0.4054f |
Definition at line 38 of file aacenc_utils.h.
Referenced by find_min_book().
#define ERROR_IF | ( | cond, | |
... | |||
) |
Definition at line 268 of file aacenc_utils.h.
Referenced by aac_encode_init().
#define WARN_IF | ( | cond, | |
... | |||
) |
Definition at line 274 of file aacenc_utils.h.
Referenced by aac_encode_init().
Definition at line 40 of file aacenc_utils.h.
Referenced by aac_encode_init().
|
inlinestatic |
Definition at line 49 of file aacenc_utils.h.
Referenced by ff_aac_is_encoding_err().
|
inlinestatic |
Quantize one coefficient.
Definition at line 59 of file aacenc_utils.h.
|
inlinestatic |
Definition at line 65 of file aacenc_utils.h.
Referenced by aac_encode_init().
Definition at line 80 of file aacenc_utils.h.
Referenced by ff_aac_is_encoding_err(), ff_aac_search_for_pred(), search_for_quantizers_anmr(), search_for_quantizers_fast(), and search_for_quantizers_twoloop().
Definition at line 92 of file aacenc_utils.h.
Referenced by ff_aac_is_encoding_err(), ff_aac_search_for_pred(), search_for_ms(), search_for_quantizers_anmr(), search_for_quantizers_fast(), and search_for_quantizers_twoloop().
|
inlinestatic |
compute variance
Definition at line 104 of file aacenc_utils.h.
Referenced by search_for_quantizers_twoloop().
|
inlinestatic |
Return the minimum scalefactor where the quantized coef does not clip.
Definition at line 157 of file aacenc_utils.h.
Referenced by search_for_quantizers_anmr(), and search_for_quantizers_twoloop().
|
inlinestatic |
Return the maximum scalefactor where the quantized coef is not zero.
Definition at line 163 of file aacenc_utils.h.
Referenced by search_for_quantizers_anmr().
Definition at line 171 of file aacenc_utils.h.
Referenced by get_lag(), and quantize_coefs().
|
static |
approximates exp10f(-3.0f*(0.5f + 0.5f * cosf(FFMIN(b,15.5f) / 15.5f)))
Definition at line 188 of file aacenc_utils.h.
Referenced by search_for_ms().
|
inlinestatic |
Just a safe default
Now really navigate the nonzero band chain
Definition at line 199 of file aacenc_utils.h.
Referenced by ff_aac_search_for_is(), search_for_ms(), search_for_pns(), and search_for_quantizers_twoloop().
Definition at line 221 of file aacenc_utils.h.
|
inlinestatic |
Definition at line 232 of file aacenc_utils.h.
Referenced by ff_aac_search_for_is(), search_for_pns(), and search_for_quantizers_twoloop().
|
inlinestatic |
Definition at line 246 of file aacenc_utils.h.
Referenced by search_for_ms().
|
static |
linear congruential pseudorandom number generator
previous_val | pointer to the current state of the generator |
Definition at line 262 of file aacenc_utils.h.