AC3DecodeContext Struct Reference

#include <ac3dec.h>


Public Member Functions

 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 *2])
 temporary storage for output before windowing
 DECLARE_ALIGNED_16 (float, tmp_imdct[AC3_BLOCK_SIZE])
 temporary storage for imdct transform
 DECLARE_ALIGNED_16 (float, output[AC3_MAX_CHANNELS][AC3_BLOCK_SIZE])
 output after imdct transform and windowing
 DECLARE_ALIGNED_16 (short, int_output[AC3_MAX_CHANNELS-1][AC3_BLOCK_SIZE])

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
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
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)
int 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]
int channel_uses_aht [AC3_MAX_CHANNELS]
 channel AHT in use (chahtinu)
int pre_mantissa [6][AC3_MAX_CHANNELS][AC3_MAX_COEFS]
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
float downmix_coeff_adjust [2]
 adjustment needed for each output channel when downmixing
int downmixed
 indicates if coeffs are currently downmixed
int output_mode
 output channel configuration
int out_channels
float dynamic_range [2]
int start_freq [AC3_MAX_CHANNELS]
 start frequency bin (strtmant)
int end_freq [AC3_MAX_CHANNELS]
int num_rematrixing_bands
 number of rematrixing bands (nrematbnd)
int rematrixing_flags [4]
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]
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]
int dither_all
 true if all channels are dithered
int dither_flag [AC3_MAX_CHANNELS]
 dither flags (dithflg)
AVRandomState dith_state
int block_switch [AC3_MAX_CHANNELS]
 block switch flags (blksw)
MDCTContext imdct_512
 for 512 sample IMDCT
MDCTContext imdct_256
DSPContext dsp
 for optimization
float add_bias
 offset for float_to_int16 conversion
float mul_bias
int fixed_coeffs [AC3_MAX_CHANNELS][AC3_MAX_COEFS]


Detailed Description

Definition at line 47 of file ac3dec.h.


Member Function Documentation

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

transform coefficients

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

delay - added to the next block

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

window coefficients

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

temporary storage for output before windowing

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

temporary storage for imdct transform

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

output after imdct transform and windowing

AC3DecodeContext::DECLARE_ALIGNED_16 ( short  ,
int_output  [AC3_MAX_CHANNELS-1][AC3_BLOCK_SIZE] 
)

final 16-bit integer output


Field Documentation

AVCodecContext* AC3DecodeContext::avctx

parent context

Definition at line 48 of file ac3dec.h.

Referenced by ac3_decode_init(), and ac3_parse_audio_block().

GetBitContext AC3DecodeContext::gbc

bitstream reader

Definition at line 49 of file ac3dec.h.

Referenced by ac3_decode_frame(), ac3_parse_audio_block(), ac3_parse_header(), get_transform_coeffs_ch(), and parse_frame_header().

uint8_t* AC3DecodeContext::input_buffer

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().

int AC3DecodeContext::snr_offset_strategy

SNR offset strategy (snroffststr).

Definition at line 69 of file ac3dec.h.

int AC3DecodeContext::block_switch_syntax

block switch syntax enabled (blkswe)

Definition at line 70 of file ac3dec.h.

int AC3DecodeContext::dither_flag_syntax

dither flag syntax enabled (dithflage)

Definition at line 71 of file ac3dec.h.

int AC3DecodeContext::bit_allocation_syntax

bit allocation model syntax enabled (bamode)

Definition at line 72 of file ac3dec.h.

int AC3DecodeContext::fast_gain_syntax

fast gain codes enabled (frmfgaincode)

Definition at line 73 of file ac3dec.h.

int AC3DecodeContext::dba_syntax

delta bit allocation syntax enabled (dbaflde)

Definition at line 74 of file ac3dec.h.

int AC3DecodeContext::skip_syntax

skip field syntax enabled (skipflde)

Definition at line 75 of file ac3dec.h.

int AC3DecodeContext::cpl_in_use[MAX_BLOCKS]

coupling in use (cplinu)

Definition at line 79 of file ac3dec.h.

Referenced by ac3_parse_audio_block().

int AC3DecodeContext::cpl_strategy_exists[MAX_BLOCKS]

coupling strategy exists (cplstre)

Definition at line 80 of file ac3dec.h.

int AC3DecodeContext::channel_in_cpl[AC3_MAX_CHANNELS]

channel in coupling (chincpl)

Definition at line 81 of file ac3dec.h.

Referenced by ac3_parse_audio_block(), get_transform_coeffs(), parse_frame_header(), remove_dithering(), and uncouple_channels().

int AC3DecodeContext::phase_flags_in_use

phase flags in use (phsflginu)

Definition at line 82 of file ac3dec.h.

Referenced by ac3_parse_audio_block().

int AC3DecodeContext::phase_flags[18]

phase flags (phsflg)

Definition at line 83 of file ac3dec.h.

Referenced by ac3_parse_audio_block(), and uncouple_channels().

int AC3DecodeContext::num_cpl_subbands

number of coupling sub bands (ncplsubnd)

Definition at line 84 of file ac3dec.h.

Referenced by ac3_parse_audio_block().

int AC3DecodeContext::num_cpl_bands

number of coupling bands (ncplbnd)

Definition at line 85 of file ac3dec.h.

Referenced by ac3_parse_audio_block(), and uncouple_channels().

int AC3DecodeContext::cpl_band_struct[18]

coupling band structure (cplbndstrc)

Definition at line 86 of file ac3dec.h.

Referenced by ac3_parse_audio_block(), and uncouple_channels().

int AC3DecodeContext::firstchincpl

first channel in coupling

Definition at line 87 of file ac3dec.h.

int AC3DecodeContext::first_cpl_coords[AC3_MAX_CHANNELS]

first coupling coordinates states (firstcplcos)

Definition at line 88 of file ac3dec.h.

int AC3DecodeContext::cpl_coords[AC3_MAX_CHANNELS][18]

coupling coordinates (cplco)

Definition at line 89 of file ac3dec.h.

Referenced by ac3_parse_audio_block(), and uncouple_channels().

int AC3DecodeContext::channel_uses_aht[AC3_MAX_CHANNELS]

channel AHT in use (chahtinu)

Definition at line 93 of file ac3dec.h.

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

pre-IDCT mantissas

Definition at line 94 of file ac3dec.h.

int AC3DecodeContext::fbw_channels

number of full-bandwidth channels

Definition at line 98 of file ac3dec.h.

Referenced by ac3_decode_frame(), ac3_downmix(), ac3_parse_audio_block(), parse_frame_header(), remove_dithering(), set_downmix_coeffs(), and uncouple_channels().

int AC3DecodeContext::channels

number of total channels

Definition at line 99 of file ac3dec.h.

Referenced by ac3_decode_frame(), get_transform_coeffs(), and parse_frame_header().

int AC3DecodeContext::lfe_ch

index of LFE channel

Definition at line 100 of file ac3dec.h.

Referenced by parse_frame_header().

float AC3DecodeContext::downmix_coeffs[AC3_MAX_CHANNELS][2]

stereo downmix coefficients

Definition at line 101 of file ac3dec.h.

Referenced by ac3_downmix(), and set_downmix_coeffs().

float AC3DecodeContext::downmix_coeff_adjust[2]

adjustment needed for each output channel when downmixing

Definition at line 102 of file ac3dec.h.

Referenced by ac3_downmix().

int AC3DecodeContext::downmixed

indicates if coeffs are currently downmixed

Definition at line 103 of file ac3dec.h.

Referenced by ac3_decode_init().

int AC3DecodeContext::output_mode

output channel configuration

Definition at line 104 of file ac3dec.h.

Referenced by ac3_decode_frame(), and ac3_downmix().

int AC3DecodeContext::out_channels

number of output channels

Definition at line 105 of file ac3dec.h.

Referenced by ac3_decode_frame().

float AC3DecodeContext::dynamic_range[2]

dynamic range

Definition at line 109 of file ac3dec.h.

Referenced by ac3_parse_audio_block().

int AC3DecodeContext::start_freq[AC3_MAX_CHANNELS]

start frequency bin (strtmant)

Definition at line 113 of file ac3dec.h.

Referenced by ac3_parse_audio_block(), get_transform_coeffs_ch(), parse_frame_header(), remove_dithering(), and uncouple_channels().

int AC3DecodeContext::end_freq[AC3_MAX_CHANNELS]

end frequency bin (endmant)

Definition at line 114 of file ac3dec.h.

Referenced by ac3_parse_audio_block(), do_rematrixing(), get_transform_coeffs(), get_transform_coeffs_ch(), parse_frame_header(), and remove_dithering().

int AC3DecodeContext::num_rematrixing_bands

number of rematrixing bands (nrematbnd)

Definition at line 118 of file ac3dec.h.

Referenced by do_rematrixing().

int AC3DecodeContext::rematrixing_flags[4]

rematrixing flags (rematflg)

Definition at line 119 of file ac3dec.h.

Referenced by do_rematrixing().

int AC3DecodeContext::num_exp_groups[AC3_MAX_CHANNELS]

Number of exponent groups (nexpgrp).

Definition at line 123 of file ac3dec.h.

Referenced by parse_frame_header().

int8_t AC3DecodeContext::dexps[AC3_MAX_CHANNELS][AC3_MAX_COEFS]

decoded exponents

Definition at line 124 of file ac3dec.h.

Referenced by get_transform_coeffs_ch().

int AC3DecodeContext::exp_strategy[MAX_BLOCKS][AC3_MAX_CHANNELS]

exponent strategies (expstr)

Definition at line 125 of file ac3dec.h.

AC3BitAllocParameters AC3DecodeContext::bit_alloc_params

bit allocation parameters

Definition at line 129 of file ac3dec.h.

Referenced by parse_frame_header().

int AC3DecodeContext::first_cpl_leak

first coupling leak state (firstcplleak)

Definition at line 130 of file ac3dec.h.

int AC3DecodeContext::snr_offset[AC3_MAX_CHANNELS]

signal-to-noise ratio offsets (snroffst)

Definition at line 131 of file ac3dec.h.

int AC3DecodeContext::fast_gain[AC3_MAX_CHANNELS]

fast gain values/SMR's (fgain)

Definition at line 132 of file ac3dec.h.

uint8_t AC3DecodeContext::bap[AC3_MAX_CHANNELS][AC3_MAX_COEFS]

bit allocation pointers

Definition at line 133 of file ac3dec.h.

Referenced by get_transform_coeffs_ch(), and remove_dithering().

int16_t AC3DecodeContext::psd[AC3_MAX_CHANNELS][AC3_MAX_COEFS]

scaled exponents

Definition at line 134 of file ac3dec.h.

int16_t AC3DecodeContext::band_psd[AC3_MAX_CHANNELS][50]

interpolated exponents

Definition at line 135 of file ac3dec.h.

int16_t AC3DecodeContext::mask[AC3_MAX_CHANNELS][50]

masking curve values

Definition at line 136 of file ac3dec.h.

int AC3DecodeContext::dba_mode[AC3_MAX_CHANNELS]

delta bit allocation mode

Definition at line 137 of file ac3dec.h.

int AC3DecodeContext::dba_nsegs[AC3_MAX_CHANNELS]

number of delta segments

Definition at line 138 of file ac3dec.h.

uint8_t AC3DecodeContext::dba_offsets[AC3_MAX_CHANNELS][8]

delta segment offsets

Definition at line 139 of file ac3dec.h.

uint8_t AC3DecodeContext::dba_lengths[AC3_MAX_CHANNELS][8]

delta segment lengths

Definition at line 140 of file ac3dec.h.

uint8_t AC3DecodeContext::dba_values[AC3_MAX_CHANNELS][8]

delta values for each segment

Definition at line 141 of file ac3dec.h.

int AC3DecodeContext::dither_all

true if all channels are dithered

Definition at line 145 of file ac3dec.h.

Referenced by ac3_parse_audio_block().

int AC3DecodeContext::dither_flag[AC3_MAX_CHANNELS]

dither flags (dithflg)

Definition at line 146 of file ac3dec.h.

Referenced by ac3_parse_audio_block(), and remove_dithering().

AVRandomState AC3DecodeContext::dith_state

for dither generation

Definition at line 147 of file ac3dec.h.

Referenced by ac3_decode_init(), and get_transform_coeffs_ch().

int AC3DecodeContext::block_switch[AC3_MAX_CHANNELS]

block switch flags (blksw)

Definition at line 151 of file ac3dec.h.

Referenced by ac3_parse_audio_block(), and do_imdct().

MDCTContext AC3DecodeContext::imdct_512

for 512 sample IMDCT

Definition at line 152 of file ac3dec.h.

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

MDCTContext AC3DecodeContext::imdct_256

for 256 sample IMDCT

Definition at line 153 of file ac3dec.h.

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

DSPContext AC3DecodeContext::dsp

for optimization

Definition at line 157 of file ac3dec.h.

Referenced by ac3_decode_init(), and do_imdct().

float AC3DecodeContext::add_bias

offset for float_to_int16 conversion

Definition at line 158 of file ac3dec.h.

Referenced by ac3_decode_init().

float AC3DecodeContext::mul_bias

scaling for float_to_int16 conversion

Definition at line 159 of file ac3dec.h.

Referenced by ac3_decode_init().

int AC3DecodeContext::fixed_coeffs[AC3_MAX_CHANNELS][AC3_MAX_COEFS]

Definition at line 162 of file ac3dec.h.

Referenced by do_rematrixing(), get_transform_coeffs(), get_transform_coeffs_ch(), remove_dithering(), and uncouple_channels().


The documentation for this struct was generated from the following file:
Generated on Sat Oct 11 19:45:59 2008 for libextractor by  doxygen 1.5.1