FFmpeg
4.0
|
AAC encoder context. More...
#include <libavcodec/aacenc.h>
Data Fields | |
AVClass * | av_class |
AACEncOptions | options |
encoding options More... | |
PutBitContext | pb |
FFTContext | mdct1024 |
long (1024 samples) frame transform context More... | |
FFTContext | mdct128 |
short (128 samples) frame transform context More... | |
AVFloatDSPContext * | fdsp |
AACPCEInfo | pce |
PCE data, if needed. More... | |
float * | planar_samples [16] |
saved preprocessed input More... | |
int | profile |
copied from avctx More... | |
int | needs_pce |
flag for non-standard layout More... | |
LPCContext | lpc |
used by TNS More... | |
int | samplerate_index |
MPEG-4 samplerate index. More... | |
int | channels |
channel count More... | |
const uint8_t * | reorder_map |
lavc to aac reorder map More... | |
const uint8_t * | chan_map |
channel configuration map More... | |
ChannelElement * | cpe |
channel elements More... | |
FFPsyContext | psy |
struct FFPsyPreprocessContext * | psypp |
const AACCoefficientsEncoder * | coder |
int | cur_channel |
current channel for coder context More... | |
int | random_state |
float | lambda |
int | last_frame_pb_count |
number of bits for the previous frame More... | |
float | lambda_sum |
sum(lambda), for Qvg reporting More... | |
int | lambda_count |
count(lambda), for Qvg reporting More... | |
enum RawDataBlockType | cur_type |
channel group type cur_channel belongs to More... | |
AudioFrameQueue | afq |
int | qcoefs [96] |
quantized coefficients More... | |
float | scoefs [1024] |
scaled coefficients More... | |
uint16_t | quantize_band_cost_cache_generation |
AACQuantizeBandCostCacheEntry | quantize_band_cost_cache [256][128] |
memoization area for quantize_band_cost More... | |
void(* | abs_pow34 )(float *out, const float *in, const int size) |
void(* | quant_bands )(int *out, const float *in, const float *scaled, int size, int is_signed, int maxval, const float Q34, const float rounding) |
struct { | |
float * samples | |
} | buffer |
AACEncOptions AACEncContext::options |
encoding options
Definition at line 378 of file aacenc.h.
Referenced by aac_encode_frame(), aac_encode_init(), ff_aac_coder_init_mips(), and search_for_quantizers_twoloop().
PutBitContext AACEncContext::pb |
Definition at line 379 of file aacenc.h.
Referenced by aac_encode_frame(), codebook_trellis_rate(), encode_individual_channel(), encode_pulses(), encode_scale_factors(), encode_spectral_coeffs(), encode_window_bands_info(), ff_aac_encode_ltp_info(), ff_aac_encode_main_pred(), ff_aac_encode_tns_info(), put_bitstream_info(), and put_ics_info().
FFTContext AACEncContext::mdct1024 |
long (1024 samples) frame transform context
Definition at line 380 of file aacenc.h.
Referenced by aac_encode_end(), aac_encode_frame(), apply_window_and_mdct(), and dsp_init().
FFTContext AACEncContext::mdct128 |
short (128 samples) frame transform context
Definition at line 381 of file aacenc.h.
Referenced by aac_encode_end(), apply_window_and_mdct(), and dsp_init().
AVFloatDSPContext* AACEncContext::fdsp |
Definition at line 382 of file aacenc.h.
Referenced by aac_encode_end(), aac_encode_frame(), apply_window_and_mdct(), dsp_init(), and search_for_pns().
AACPCEInfo AACEncContext::pce |
PCE data, if needed.
Definition at line 383 of file aacenc.h.
Referenced by aac_encode_init(), and put_pce().
float* AACEncContext::planar_samples[16] |
saved preprocessed input
Definition at line 384 of file aacenc.h.
Referenced by aac_encode_frame(), alloc_buffers(), copy_input_samples(), ff_aac_ltp_insert_new_frame(), and ff_aac_update_ltp().
int AACEncContext::profile |
copied from avctx
Definition at line 386 of file aacenc.h.
Referenced by aac_encode_init(), ff_aac_encode_ltp_info(), ff_aac_encode_main_pred(), ff_aac_search_for_tns(), ff_aac_update_ltp(), and put_audio_specific_config().
int AACEncContext::needs_pce |
flag for non-standard layout
Definition at line 387 of file aacenc.h.
Referenced by aac_encode_init(), and put_audio_specific_config().
LPCContext AACEncContext::lpc |
used by TNS
Definition at line 388 of file aacenc.h.
Referenced by aac_encode_end(), aac_encode_init(), ff_aac_apply_tns(), and ff_aac_search_for_tns().
int AACEncContext::samplerate_index |
MPEG-4 samplerate index.
Definition at line 389 of file aacenc.h.
Referenced by aac_encode_frame(), aac_encode_init(), ff_aac_adjust_common_pred(), ff_aac_apply_main_pred(), ff_aac_encode_main_pred(), ff_aac_search_for_pred(), ff_aac_search_for_tns(), put_audio_specific_config(), and put_pce().
int AACEncContext::channels |
channel count
Definition at line 390 of file aacenc.h.
Referenced by aac_encode_frame(), aac_encode_init(), alloc_buffers(), copy_input_samples(), and put_audio_specific_config().
const uint8_t* AACEncContext::reorder_map |
lavc to aac reorder map
Definition at line 391 of file aacenc.h.
Referenced by aac_encode_init(), and copy_input_samples().
const uint8_t* AACEncContext::chan_map |
channel configuration map
Definition at line 392 of file aacenc.h.
Referenced by aac_encode_frame(), aac_encode_init(), alloc_buffers(), and ff_aac_ltp_insert_new_frame().
ChannelElement* AACEncContext::cpe |
channel elements
Definition at line 394 of file aacenc.h.
Referenced by aac_encode_end(), aac_encode_frame(), alloc_buffers(), and ff_aac_ltp_insert_new_frame().
FFPsyContext AACEncContext::psy |
Definition at line 395 of file aacenc.h.
Referenced by aac_encode_end(), aac_encode_frame(), aac_encode_init(), encode_window_bands_info(), ff_aac_search_for_ltp(), ff_aac_search_for_pred(), ff_aac_search_for_tns(), mark_pns(), search_for_ms(), search_for_pns(), search_for_quantizers_anmr(), search_for_quantizers_fast(), and search_for_quantizers_twoloop().
struct FFPsyPreprocessContext* AACEncContext::psypp |
Definition at line 396 of file aacenc.h.
Referenced by aac_encode_end(), aac_encode_frame(), and aac_encode_init().
const AACCoefficientsEncoder* AACEncContext::coder |
Definition at line 397 of file aacenc.h.
Referenced by aac_encode_frame(), aac_encode_init(), encode_band_info(), encode_individual_channel(), encode_spectral_coeffs(), and ff_aac_coder_init_mips().
int AACEncContext::cur_channel |
current channel for coder context
Definition at line 398 of file aacenc.h.
Referenced by aac_encode_frame(), encode_window_bands_info(), ff_aac_search_for_ltp(), ff_aac_search_for_pred(), ff_aac_search_for_tns(), ff_aac_update_ltp(), mark_pns(), search_for_ms(), search_for_pns(), search_for_quantizers_anmr(), search_for_quantizers_fast(), and search_for_quantizers_twoloop().
int AACEncContext::random_state |
Definition at line 399 of file aacenc.h.
Referenced by aac_encode_init(), and search_for_pns().
float AACEncContext::lambda |
Definition at line 400 of file aacenc.h.
Referenced by aac_encode_frame(), aac_encode_init(), encode_band_info(), encode_spectral_coeffs(), ff_aac_search_for_is(), ff_aac_search_for_ltp(), ff_aac_search_for_pred(), mark_pns(), search_for_ms(), and search_for_pns().
int AACEncContext::last_frame_pb_count |
number of bits for the previous frame
Definition at line 401 of file aacenc.h.
Referenced by aac_encode_frame(), and aac_encode_init().
float AACEncContext::lambda_sum |
sum(lambda), for Qvg reporting
Definition at line 402 of file aacenc.h.
Referenced by aac_encode_end(), and aac_encode_frame().
int AACEncContext::lambda_count |
count(lambda), for Qvg reporting
Definition at line 403 of file aacenc.h.
Referenced by aac_encode_end(), and aac_encode_frame().
enum RawDataBlockType AACEncContext::cur_type |
channel group type cur_channel belongs to
Definition at line 404 of file aacenc.h.
Referenced by aac_encode_frame(), and search_for_quantizers_twoloop().
AudioFrameQueue AACEncContext::afq |
Definition at line 406 of file aacenc.h.
Referenced by aac_encode_end(), aac_encode_frame(), and aac_encode_init().
int AACEncContext::qcoefs[96] |
quantized coefficients
Definition at line 407 of file aacenc.h.
Referenced by quantize_and_encode_band_cost_template().
float AACEncContext::scoefs[1024] |
scaled coefficients
Definition at line 408 of file aacenc.h.
Referenced by codebook_trellis_rate(), encode_window_bands_info(), ff_aac_search_for_ltp(), ff_aac_search_for_pred(), quantize_and_encode_band_cost_template(), search_for_ms(), search_for_pns(), search_for_quantizers_anmr(), search_for_quantizers_fast(), and search_for_quantizers_twoloop().
uint16_t AACEncContext::quantize_band_cost_cache_generation |
Definition at line 410 of file aacenc.h.
Referenced by ff_quantize_band_cost_cache_init(), and quantize_band_cost_cached().
AACQuantizeBandCostCacheEntry AACEncContext::quantize_band_cost_cache[256][128] |
memoization area for quantize_band_cost
Definition at line 411 of file aacenc.h.
Referenced by ff_quantize_band_cost_cache_init(), and quantize_band_cost_cached().
Definition at line 413 of file aacenc.h.
Referenced by aac_encode_init(), codebook_trellis_rate(), encode_window_bands_info(), ff_aac_dsp_init_x86(), ff_aac_search_for_ltp(), ff_aac_search_for_pred(), quantize_and_encode_band_cost_template(), search_for_ms(), search_for_pns(), search_for_quantizers_anmr(), search_for_quantizers_fast(), and search_for_quantizers_twoloop().
void(* AACEncContext::quant_bands) (int *out, const float *in, const float *scaled, int size, int is_signed, int maxval, const float Q34, const float rounding) |
Definition at line 414 of file aacenc.h.
Referenced by aac_encode_init(), ff_aac_dsp_init_x86(), and quantize_and_encode_band_cost_template().
float* AACEncContext::samples |
Definition at line 419 of file aacenc.h.
Referenced by aac_encode_end(), and alloc_buffers().
struct { ... } AACEncContext::buffer |
Referenced by aac_encode_end(), and alloc_buffers().