AC3DecodeContext Struct Reference

#include <ac3dec.h>


Public Member Functions

 DECLARE_ALIGNED_16 (int, fixed_coeffs[AC3_MAX_CHANNELS][AC3_MAX_COEFS])
 DECLARE_ALIGNED_16 (float, transform_coeffs[AC3_MAX_CHANNELS][AC3_MAX_COEFS])
 transform coefficients
 DECLARE_ALIGNED_16 (float, delay[AC3_MAX_CHANNELS][AC3_BLOCK_SIZE])
 delay - added to the next block
 DECLARE_ALIGNED_16 (float, window[AC3_BLOCK_SIZE])
 window coefficients
 DECLARE_ALIGNED_16 (float, tmp_output[AC3_BLOCK_SIZE])
 temporary storage for output before windowing
 DECLARE_ALIGNED_16 (float, output[AC3_MAX_CHANNELS][AC3_BLOCK_SIZE])
 output after imdct transform and windowing

Data Fields

AVCodecContextavctx
 parent context
GetBitContext gbc
 bitstream reader
uint8_t * input_buffer
 temp buffer to prevent overread
int frame_type
 frame type (strmtyp)
int substreamid
 substream identification
int frame_size
 current frame size, in bytes
int bit_rate
 stream bit rate, in bits-per-second
int sample_rate
 sample frequency, in Hz
int num_blocks
 number of audio blocks
int channel_mode
 channel mode (acmod)
int lfe_on
 lfe channel in use
int channel_map
 custom channel map
int center_mix_level
 Center mix level index.
int surround_mix_level
 Surround mix level index.
int eac3
 indicates if current frame is E-AC-3
int snr_offset_strategy
 SNR offset strategy (snroffststr).
int block_switch_syntax
 block switch syntax enabled (blkswe)
int dither_flag_syntax
 dither flag syntax enabled (dithflage)
int bit_allocation_syntax
 bit allocation model syntax enabled (bamode)
int fast_gain_syntax
 fast gain codes enabled (frmfgaincode)
int dba_syntax
 delta bit allocation syntax enabled (dbaflde)
int skip_syntax
 skip field syntax enabled (skipflde)
int cpl_in_use [MAX_BLOCKS]
 coupling in use (cplinu)
int cpl_strategy_exists [MAX_BLOCKS]
 coupling strategy exists (cplstre)
int channel_in_cpl [AC3_MAX_CHANNELS]
 channel in coupling (chincpl)
int phase_flags_in_use
 phase flags in use (phsflginu)
int phase_flags [18]
 phase flags (phsflg)
int num_cpl_subbands
 number of coupling sub bands (ncplsubnd)
int num_cpl_bands
 number of coupling bands (ncplbnd)
uint8_t cpl_band_struct [18]
 coupling band structure (cplbndstrc)
int firstchincpl
 first channel in coupling
int first_cpl_coords [AC3_MAX_CHANNELS]
 first coupling coordinates states (firstcplcos)
int cpl_coords [AC3_MAX_CHANNELS][18]
 coupling coordinates (cplco)
int channel_uses_aht [AC3_MAX_CHANNELS]
 channel AHT in use (chahtinu)
int pre_mantissa [AC3_MAX_CHANNELS][AC3_MAX_COEFS][MAX_BLOCKS]
 pre-IDCT mantissas
int fbw_channels
 number of full-bandwidth channels
int channels
 number of total channels
int lfe_ch
 index of LFE channel
float downmix_coeffs [AC3_MAX_CHANNELS][2]
 stereo downmix coefficients
int downmixed
 indicates if coeffs are currently downmixed
int output_mode
 output channel configuration
int out_channels
 number of output channels
float dynamic_range [2]
 dynamic range
int start_freq [AC3_MAX_CHANNELS]
 start frequency bin (strtmant)
int end_freq [AC3_MAX_CHANNELS]
 end frequency bin (endmant)
int num_rematrixing_bands
 number of rematrixing bands (nrematbnd)
int rematrixing_flags [4]
 rematrixing flags (rematflg)
int num_exp_groups [AC3_MAX_CHANNELS]
 Number of exponent groups (nexpgrp).
int8_t dexps [AC3_MAX_CHANNELS][AC3_MAX_COEFS]
 decoded exponents
int exp_strategy [MAX_BLOCKS][AC3_MAX_CHANNELS]
 exponent strategies (expstr)
AC3BitAllocParameters bit_alloc_params
 bit allocation parameters
int first_cpl_leak
 first coupling leak state (firstcplleak)
int snr_offset [AC3_MAX_CHANNELS]
 signal-to-noise ratio offsets (snroffst)
int fast_gain [AC3_MAX_CHANNELS]
 fast gain values/SMR's (fgain)
uint8_t bap [AC3_MAX_CHANNELS][AC3_MAX_COEFS]
 bit allocation pointers
int16_t psd [AC3_MAX_CHANNELS][AC3_MAX_COEFS]
 scaled exponents
int16_t band_psd [AC3_MAX_CHANNELS][50]
 interpolated exponents
int16_t mask [AC3_MAX_CHANNELS][50]
 masking curve values
int dba_mode [AC3_MAX_CHANNELS]
 delta bit allocation mode
int dba_nsegs [AC3_MAX_CHANNELS]
 number of delta segments
uint8_t dba_offsets [AC3_MAX_CHANNELS][8]
 delta segment offsets
uint8_t dba_lengths [AC3_MAX_CHANNELS][8]
 delta segment lengths
uint8_t dba_values [AC3_MAX_CHANNELS][8]
 delta values for each segment
int dither_flag [AC3_MAX_CHANNELS]
 dither flags (dithflg)
AVLFG dith_state
 for dither generation
int block_switch [AC3_MAX_CHANNELS]
 block switch flags (blksw)
MDCTContext imdct_512
 for 512 sample IMDCT
MDCTContext imdct_256
 for 256 sample IMDCT
DSPContext dsp
 for optimization
float add_bias
 offset for float_to_int16 conversion
float mul_bias
 scaling for float_to_int16 conversion


Detailed Description

Definition at line 47 of file ac3dec.h.


Member Function Documentation

AC3DecodeContext::DECLARE_ALIGNED_16 ( float  ,
output  [AC3_MAX_CHANNELS][AC3_BLOCK_SIZE] 
)

output after imdct transform and windowing

AC3DecodeContext::DECLARE_ALIGNED_16 ( float  ,
tmp_output  [AC3_BLOCK_SIZE] 
)

temporary storage for output before windowing

AC3DecodeContext::DECLARE_ALIGNED_16 ( float  ,
window  [AC3_BLOCK_SIZE] 
)

window coefficients

AC3DecodeContext::DECLARE_ALIGNED_16 ( float  ,
delay  [AC3_MAX_CHANNELS][AC3_BLOCK_SIZE] 
)

delay - added to the next block

AC3DecodeContext::DECLARE_ALIGNED_16 ( float  ,
transform_coeffs  [AC3_MAX_CHANNELS][AC3_MAX_COEFS] 
)

transform coefficients

AC3DecodeContext::DECLARE_ALIGNED_16 ( int  ,
fixed_coeffs  [AC3_MAX_CHANNELS][AC3_MAX_COEFS] 
)


Field Documentation

offset for float_to_int16 conversion

Definition at line 156 of file ac3dec.h.

Referenced by ac3_decode_init(), and do_imdct().

int16_t AC3DecodeContext::band_psd[AC3_MAX_CHANNELS][50]

interpolated exponents

Definition at line 134 of file ac3dec.h.

Referenced by decode_audio_block().

uint8_t AC3DecodeContext::bap[AC3_MAX_CHANNELS][AC3_MAX_COEFS]

bit allocation pointers

Definition at line 132 of file ac3dec.h.

Referenced by ac3_decode_transform_coeffs_ch(), decode_audio_block(), ff_eac3_decode_transform_coeffs_aht_ch(), and remove_dithering().

bit allocation parameters

Definition at line 128 of file ac3dec.h.

Referenced by decode_audio_block(), ff_eac3_parse_header(), and parse_frame_header().

bit allocation model syntax enabled (bamode)

Definition at line 72 of file ac3dec.h.

Referenced by decode_audio_block(), ff_eac3_parse_header(), and parse_frame_header().

int AC3DecodeContext::block_switch[AC3_MAX_CHANNELS]

block switch flags (blksw)

Definition at line 149 of file ac3dec.h.

Referenced by decode_audio_block(), do_imdct(), and ff_eac3_parse_header().

block switch syntax enabled (blkswe)

Definition at line 70 of file ac3dec.h.

Referenced by decode_audio_block(), ff_eac3_parse_header(), and parse_frame_header().

int AC3DecodeContext::channel_in_cpl[AC3_MAX_CHANNELS]

channel in coupling (chincpl)

Definition at line 81 of file ac3dec.h.

Referenced by calc_transform_coeffs_cpl(), decode_audio_block(), decode_transform_coeffs(), parse_frame_header(), and remove_dithering().

int AC3DecodeContext::channel_uses_aht[AC3_MAX_CHANNELS]

channel AHT in use (chahtinu)

Definition at line 93 of file ac3dec.h.

Referenced by decode_audio_block(), decode_transform_coeffs_ch(), ff_eac3_parse_header(), and parse_frame_header().

number of total channels

Definition at line 99 of file ac3dec.h.

Referenced by ac3_decode_frame(), decode_audio_block(), decode_transform_coeffs(), ff_eac3_parse_header(), and parse_frame_header().

coupling band structure (cplbndstrc)

Definition at line 86 of file ac3dec.h.

Referenced by calc_transform_coeffs_cpl(), and decode_audio_block().

int AC3DecodeContext::cpl_coords[AC3_MAX_CHANNELS][18]

coupling coordinates (cplco)

Definition at line 89 of file ac3dec.h.

Referenced by calc_transform_coeffs_cpl(), and decode_audio_block().

coupling in use (cplinu)

Definition at line 79 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_parse_header().

coupling strategy exists (cplstre)

Definition at line 80 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_parse_header().

uint8_t AC3DecodeContext::dba_lengths[AC3_MAX_CHANNELS][8]

delta segment lengths

Definition at line 139 of file ac3dec.h.

Referenced by decode_audio_block().

int AC3DecodeContext::dba_mode[AC3_MAX_CHANNELS]

delta bit allocation mode

Definition at line 136 of file ac3dec.h.

Referenced by decode_audio_block().

int AC3DecodeContext::dba_nsegs[AC3_MAX_CHANNELS]

number of delta segments

Definition at line 137 of file ac3dec.h.

Referenced by decode_audio_block().

uint8_t AC3DecodeContext::dba_offsets[AC3_MAX_CHANNELS][8]

delta segment offsets

Definition at line 138 of file ac3dec.h.

Referenced by decode_audio_block().

delta bit allocation syntax enabled (dbaflde)

Definition at line 74 of file ac3dec.h.

Referenced by decode_audio_block(), ff_eac3_parse_header(), and parse_frame_header().

uint8_t AC3DecodeContext::dba_values[AC3_MAX_CHANNELS][8]

delta values for each segment

Definition at line 140 of file ac3dec.h.

Referenced by decode_audio_block().

int8_t AC3DecodeContext::dexps[AC3_MAX_CHANNELS][AC3_MAX_COEFS]

decoded exponents

Definition at line 123 of file ac3dec.h.

Referenced by ac3_decode_transform_coeffs_ch(), decode_audio_block(), and decode_transform_coeffs_ch().

for dither generation

Definition at line 145 of file ac3dec.h.

Referenced by ac3_decode_init(), ac3_decode_transform_coeffs_ch(), and ff_eac3_decode_transform_coeffs_aht_ch().

int AC3DecodeContext::dither_flag[AC3_MAX_CHANNELS]

dither flags (dithflg)

Definition at line 144 of file ac3dec.h.

Referenced by decode_audio_block(), ff_eac3_parse_header(), and remove_dithering().

dither flag syntax enabled (dithflage)

Definition at line 71 of file ac3dec.h.

Referenced by decode_audio_block(), ff_eac3_parse_header(), and parse_frame_header().

float AC3DecodeContext::downmix_coeffs[AC3_MAX_CHANNELS][2]

stereo downmix coefficients

Definition at line 101 of file ac3dec.h.

Referenced by decode_audio_block(), and set_downmix_coeffs().

indicates if coeffs are currently downmixed

Definition at line 102 of file ac3dec.h.

Referenced by ac3_decode_init(), and decode_audio_block().

for optimization

Definition at line 155 of file ac3dec.h.

Referenced by ac3_decode_frame(), ac3_decode_init(), decode_audio_block(), and do_imdct().

dynamic range

Definition at line 108 of file ac3dec.h.

Referenced by decode_audio_block().

int AC3DecodeContext::end_freq[AC3_MAX_CHANNELS]

int AC3DecodeContext::exp_strategy[MAX_BLOCKS][AC3_MAX_CHANNELS]

exponent strategies (expstr)

Definition at line 124 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_parse_header().

int AC3DecodeContext::fast_gain[AC3_MAX_CHANNELS]

fast gain values/SMR's (fgain)

Definition at line 131 of file ac3dec.h.

Referenced by decode_audio_block().

fast gain codes enabled (frmfgaincode)

Definition at line 73 of file ac3dec.h.

Referenced by decode_audio_block(), ff_eac3_parse_header(), and parse_frame_header().

int AC3DecodeContext::first_cpl_coords[AC3_MAX_CHANNELS]

first coupling coordinates states (firstcplcos)

Definition at line 88 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_parse_header().

first coupling leak state (firstcplleak)

Definition at line 129 of file ac3dec.h.

Referenced by decode_audio_block(), ff_eac3_parse_header(), and parse_frame_header().

first channel in coupling

Definition at line 87 of file ac3dec.h.

for 256 sample IMDCT

Definition at line 151 of file ac3dec.h.

Referenced by ac3_decode_end(), ac3_decode_init(), and do_imdct().

for 512 sample IMDCT

Definition at line 150 of file ac3dec.h.

Referenced by ac3_decode_end(), ac3_decode_init(), and do_imdct().

temp buffer to prevent overread

Definition at line 50 of file ac3dec.h.

Referenced by ac3_decode_end(), ac3_decode_frame(), and ac3_decode_init().

index of LFE channel

Definition at line 100 of file ac3dec.h.

Referenced by decode_audio_block(), ff_eac3_parse_header(), and parse_frame_header().

int16_t AC3DecodeContext::mask[AC3_MAX_CHANNELS][50]

masking curve values

Definition at line 135 of file ac3dec.h.

Referenced by decode_audio_block().

scaling for float_to_int16 conversion

Definition at line 157 of file ac3dec.h.

Referenced by ac3_decode_init(), and decode_audio_block().

number of coupling bands (ncplbnd)

Definition at line 85 of file ac3dec.h.

Referenced by calc_transform_coeffs_cpl(), and decode_audio_block().

number of coupling sub bands (ncplsubnd)

Definition at line 84 of file ac3dec.h.

Referenced by decode_audio_block().

int AC3DecodeContext::num_exp_groups[AC3_MAX_CHANNELS]

Number of exponent groups (nexpgrp).

Definition at line 122 of file ac3dec.h.

Referenced by decode_audio_block(), and parse_frame_header().

number of rematrixing bands (nrematbnd)

Definition at line 117 of file ac3dec.h.

Referenced by decode_audio_block(), and do_rematrixing().

number of output channels

Definition at line 104 of file ac3dec.h.

Referenced by ac3_decode_frame(), decode_audio_block(), and do_imdct().

output channel configuration

Definition at line 103 of file ac3dec.h.

Referenced by ac3_decode_frame(), decode_audio_block(), and set_downmix_coeffs().

phase flags (phsflg)

Definition at line 83 of file ac3dec.h.

Referenced by calc_transform_coeffs_cpl(), and decode_audio_block().

phase flags in use (phsflginu)

Definition at line 82 of file ac3dec.h.

Referenced by decode_audio_block().

int AC3DecodeContext::pre_mantissa[AC3_MAX_CHANNELS][AC3_MAX_COEFS][MAX_BLOCKS]

pre-IDCT mantissas

Definition at line 94 of file ac3dec.h.

Referenced by decode_transform_coeffs_ch(), and ff_eac3_decode_transform_coeffs_aht_ch().

int16_t AC3DecodeContext::psd[AC3_MAX_CHANNELS][AC3_MAX_COEFS]

scaled exponents

Definition at line 133 of file ac3dec.h.

Referenced by decode_audio_block().

rematrixing flags (rematflg)

Definition at line 118 of file ac3dec.h.

Referenced by decode_audio_block(), and do_rematrixing().

skip field syntax enabled (skipflde)

Definition at line 75 of file ac3dec.h.

Referenced by decode_audio_block(), ff_eac3_parse_header(), and parse_frame_header().

int AC3DecodeContext::snr_offset[AC3_MAX_CHANNELS]

signal-to-noise ratio offsets (snroffst)

Definition at line 130 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_parse_header().

SNR offset strategy (snroffststr).

Definition at line 69 of file ac3dec.h.

Referenced by decode_audio_block(), ff_eac3_parse_header(), and parse_frame_header().

int AC3DecodeContext::start_freq[AC3_MAX_CHANNELS]


The documentation for this struct was generated from the following file:

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