AC3DecodeContext Struct Reference

#include <ac3dec.h>

Data Fields

AVClassclass
 class for AVOptions
AVCodecContextavctx
 parent context
AVFrame frame
 AVFrame for decoded output.
GetBitContext gbc
 bitstream reader
Bit stream information
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 bitstream_mode
 bitstream mode (bsmod)
int channel_mode
 channel mode (acmod)
int channel_layout
 channel layout
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
Frame syntax parameters
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)
Standard coupling
int cpl_in_use [AC3_MAX_BLOCKS]
 coupling in use (cplinu)
int cpl_strategy_exists [AC3_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 [AC3_MAX_CPL_BANDS]
 phase flags (phsflg)
int num_cpl_bands
 number of coupling bands (ncplbnd)
uint8_t cpl_band_sizes [AC3_MAX_CPL_BANDS]
 number of coeffs in each coupling band
int firstchincpl
 first channel in coupling
int first_cpl_coords [AC3_MAX_CHANNELS]
 first coupling coordinates states (firstcplcos)
int cpl_coords [AC3_MAX_CHANNELS][AC3_MAX_CPL_BANDS]
 coupling coordinates (cplco)
Spectral extension
int spx_in_use
 spectral extension in use (spxinu)
uint8_t channel_uses_spx [AC3_MAX_CHANNELS]
 channel uses spectral extension (chinspx)
int8_t spx_atten_code [AC3_MAX_CHANNELS]
 spx attenuation code (spxattencod)
int spx_src_start_freq
 spx start frequency bin
int spx_dst_end_freq
 spx end frequency bin
int spx_dst_start_freq
 spx starting frequency bin for copying (copystartmant) the copy region ends at the start of the spx region.
int num_spx_bands
 number of spx bands (nspxbnds)
uint8_t spx_band_sizes [SPX_MAX_BANDS]
 number of bins in each spx band
uint8_t first_spx_coords [AC3_MAX_CHANNELS]
 first spx coordinates states (firstspxcos)
float spx_noise_blend [AC3_MAX_CHANNELS][SPX_MAX_BANDS]
 spx noise blending factor (nblendfact)
float spx_signal_blend [AC3_MAX_CHANNELS][SPX_MAX_BANDS]
 spx signal blending factor (sblendfact)
Adaptive hybrid transform
int channel_uses_aht [AC3_MAX_CHANNELS]
 channel AHT in use (chahtinu)
int pre_mantissa [AC3_MAX_CHANNELS][AC3_MAX_COEFS][AC3_MAX_BLOCKS]
 pre-IDCT mantissas
Channel
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
Dynamic range
float dynamic_range [2]
 dynamic range
float drc_scale
 percentage of dynamic range compression to be applied
Bandwidth
int start_freq [AC3_MAX_CHANNELS]
 start frequency bin (strtmant)
int end_freq [AC3_MAX_CHANNELS]
 end frequency bin (endmant)
Rematrixing
int num_rematrixing_bands
 number of rematrixing bands (nrematbnd)
int rematrixing_flags [4]
 rematrixing flags (rematflg)
Exponents
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 [AC3_MAX_BLOCKS][AC3_MAX_CHANNELS]
 exponent strategies (expstr)
Bit allocation
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][AC3_CRITICAL_BANDS]
 interpolated exponents
int16_t mask [AC3_MAX_CHANNELS][AC3_CRITICAL_BANDS]
 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
Zero-mantissa dithering
int dither_flag [AC3_MAX_CHANNELS]
 dither flags (dithflg)
AVLFG dith_state
 for dither generation
IMDCT
int block_switch [AC3_MAX_CHANNELS]
 block switch flags (blksw)
FFTContext imdct_512
 for 512 sample IMDCT
FFTContext imdct_256
 for 256 sample IMDCT
Optimization
DSPContext dsp
 for optimization
AC3DSPContext ac3dsp
FmtConvertContext fmt_conv
 optimized conversion functions
float mul_bias
 scaling for float_to_int16 conversion
Aligned arrays
int fixed_coeffs [AC3_MAX_CHANNELS][AC3_MAX_COEFS]
 fixed-point transform coefficients
float transform_coeffs [AC3_MAX_CHANNELS][AC3_MAX_COEFS]
 transform coefficients
float delay [AC3_MAX_CHANNELS][AC3_BLOCK_SIZE]
 delay - added to the next block
float window [AC3_BLOCK_SIZE]
 window coefficients
float tmp_output [AC3_BLOCK_SIZE]
 temporary storage for output before windowing
float output [AC3_MAX_CHANNELS][AC3_BLOCK_SIZE]
 output after imdct transform and windowing
uint8_t input_buffer [AC3_FRAME_BUFFER_SIZE+FF_INPUT_BUFFER_PADDING_SIZE]
 temp buffer to prevent overread

Detailed Description

Definition at line 68 of file ac3dec.h.


Field Documentation

interpolated exponents

Definition at line 174 of file ac3dec.h.

Referenced by decode_audio_block().

bit allocation model syntax enabled (bamode)

Definition at line 96 of file ac3dec.h.

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

stream bit rate, in bits-per-second

Definition at line 79 of file ac3dec.h.

Referenced by ac3_decode_frame(), and parse_frame_header().

bitstream mode (bsmod)

Definition at line 82 of file ac3dec.h.

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

block switch flags (blksw)

Definition at line 189 of file ac3dec.h.

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

block switch syntax enabled (blkswe)

Definition at line 94 of file ac3dec.h.

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

Center mix level index.

Definition at line 87 of file ac3dec.h.

Referenced by ff_eac3_parse_header(), and parse_frame_header().

channel layout

Definition at line 84 of file ac3dec.h.

Referenced by ac3_decode_frame(), and parse_frame_header().

custom channel map

Definition at line 86 of file ac3dec.h.

channel uses spectral extension (chinspx)

Definition at line 118 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_apply_spectral_extension().

class for AVOptions

Definition at line 69 of file ac3dec.h.

number of coeffs in each coupling band

Definition at line 109 of file ac3dec.h.

Referenced by calc_transform_coeffs_cpl(), and decode_audio_block().

coupling coordinates (cplco)

Definition at line 112 of file ac3dec.h.

Referenced by calc_transform_coeffs_cpl(), and decode_audio_block().

coupling in use (cplinu)

Definition at line 103 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_parse_header().

coupling strategy exists (cplstre)

Definition at line 104 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_parse_header().

delta segment lengths

Definition at line 179 of file ac3dec.h.

Referenced by decode_audio_block().

delta bit allocation mode

Definition at line 176 of file ac3dec.h.

Referenced by decode_audio_block().

number of delta segments

Definition at line 177 of file ac3dec.h.

Referenced by decode_audio_block().

delta segment offsets

Definition at line 178 of file ac3dec.h.

Referenced by decode_audio_block().

delta bit allocation syntax enabled (dbaflde)

Definition at line 98 of file ac3dec.h.

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

delta values for each segment

Definition at line 180 of file ac3dec.h.

Referenced by decode_audio_block().

delay - added to the next block

Definition at line 204 of file ac3dec.h.

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

dither flag syntax enabled (dithflage)

Definition at line 95 of file ac3dec.h.

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

stereo downmix coefficients

Definition at line 140 of file ac3dec.h.

Referenced by decode_audio_block(), and set_downmix_coeffs().

indicates if coeffs are currently downmixed

Definition at line 141 of file ac3dec.h.

Referenced by ac3_decode_init(), and decode_audio_block().

percentage of dynamic range compression to be applied

Definition at line 148 of file ac3dec.h.

Referenced by ac3_decode_init(), and decode_audio_block().

for optimization

Definition at line 195 of file ac3dec.h.

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

dynamic range

Definition at line 147 of file ac3dec.h.

Referenced by decode_audio_block().

indicates if current frame is E-AC-3

Definition at line 89 of file ac3dec.h.

Referenced by decode_audio_block(), and parse_frame_header().

exponent strategies (expstr)

Definition at line 164 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_parse_header().

fast gain values/SMR's (fgain)

Definition at line 171 of file ac3dec.h.

Referenced by decode_audio_block().

fast gain codes enabled (frmfgaincode)

Definition at line 97 of file ac3dec.h.

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

first coupling coordinates states (firstcplcos)

Definition at line 111 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_parse_header().

first coupling leak state (firstcplleak)

Definition at line 169 of file ac3dec.h.

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

first spx coordinates states (firstspxcos)

Definition at line 126 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_parse_header().

first channel in coupling

Definition at line 110 of file ac3dec.h.

optimized conversion functions

Definition at line 197 of file ac3dec.h.

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

AVFrame for decoded output.

Definition at line 71 of file ac3dec.h.

Referenced by ac3_decode_frame(), and ac3_decode_init().

current frame size, in bytes

Definition at line 78 of file ac3dec.h.

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

frame type (strmtyp)

Definition at line 76 of file ac3dec.h.

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

for 256 sample IMDCT

Definition at line 191 of file ac3dec.h.

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

for 512 sample IMDCT

Definition at line 190 of file ac3dec.h.

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

temp buffer to prevent overread

Definition at line 208 of file ac3dec.h.

Referenced by ac3_decode_frame().

index of LFE channel

Definition at line 139 of file ac3dec.h.

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

lfe channel in use

Definition at line 85 of file ac3dec.h.

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

masking curve values

Definition at line 175 of file ac3dec.h.

Referenced by decode_audio_block().

scaling for float_to_int16 conversion

Definition at line 198 of file ac3dec.h.

Referenced by ac3_decode_init(), and decode_audio_block().

number of audio blocks

Definition at line 81 of file ac3dec.h.

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

number of coupling bands (ncplbnd)

Definition at line 108 of file ac3dec.h.

Referenced by calc_transform_coeffs_cpl(), and decode_audio_block().

Number of exponent groups (nexpgrp)

Definition at line 162 of file ac3dec.h.

Referenced by decode_audio_block(), and parse_frame_header().

number of rematrixing bands (nrematbnd)

Definition at line 157 of file ac3dec.h.

Referenced by decode_audio_block(), and do_rematrixing().

number of spx bands (nspxbnds)

Definition at line 124 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_apply_spectral_extension().

number of output channels

Definition at line 143 of file ac3dec.h.

Referenced by ac3_decode_frame(), and decode_audio_block().

output after imdct transform and windowing

Definition at line 207 of file ac3dec.h.

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

output channel configuration

Definition at line 142 of file ac3dec.h.

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

phase flags (phsflg)

Definition at line 107 of file ac3dec.h.

Referenced by calc_transform_coeffs_cpl(), and decode_audio_block().

phase flags in use (phsflginu)

Definition at line 106 of file ac3dec.h.

Referenced by decode_audio_block().

scaled exponents

Definition at line 173 of file ac3dec.h.

Referenced by decode_audio_block().

rematrixing flags (rematflg)

Definition at line 158 of file ac3dec.h.

Referenced by decode_audio_block(), and do_rematrixing().

sample frequency, in Hz

Definition at line 80 of file ac3dec.h.

Referenced by ac3_decode_frame(), and parse_frame_header().

skip field syntax enabled (skipflde)

Definition at line 99 of file ac3dec.h.

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

signal-to-noise ratio offsets (snroffst)

Definition at line 170 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_parse_header().

SNR offset strategy (snroffststr)

Definition at line 93 of file ac3dec.h.

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

spx attenuation code (spxattencod)

Definition at line 119 of file ac3dec.h.

Referenced by ff_eac3_apply_spectral_extension(), and ff_eac3_parse_header().

number of bins in each spx band

Definition at line 125 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_apply_spectral_extension().

spx end frequency bin

Definition at line 121 of file ac3dec.h.

Referenced by decode_audio_block().

spx starting frequency bin for copying (copystartmant) the copy region ends at the start of the spx region.

Definition at line 122 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_apply_spectral_extension().

spectral extension in use (spxinu)

Definition at line 117 of file ac3dec.h.

Referenced by decode_audio_block().

spx noise blending factor (nblendfact)

Definition at line 127 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_apply_spectral_extension().

spx signal blending factor (sblendfact)

Definition at line 128 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_apply_spectral_extension().

spx start frequency bin

Definition at line 120 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_apply_spectral_extension().

substream identification

Definition at line 77 of file ac3dec.h.

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

Surround mix level index.

Definition at line 88 of file ac3dec.h.

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

temporary storage for output before windowing

Definition at line 206 of file ac3dec.h.

Referenced by do_imdct().

window coefficients

Definition at line 205 of file ac3dec.h.

Referenced by ac3_decode_init(), and do_imdct().


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