AC3DecodeContext Struct Reference

#include <ac3dec.h>


Data Fields

class for AVOptions
parent context
AVFrame for decoded output.
bitstream reader
Bit stream information
frame type (strmtyp)
substream identification
current frame size, in bytes
stream bit rate, in bits-per-second
sample frequency, in Hz
number of audio blocks
bitstream mode (bsmod)
channel mode (acmod)
channel layout
lfe channel in use
custom channel map
Center mix level index.
Surround mix level index.
indicates if current frame is E-AC-3
Frame syntax parameters
SNR offset strategy (snroffststr).
block switch syntax enabled (blkswe)
dither flag syntax enabled (dithflage)
bit allocation model syntax enabled (bamode)
fast gain codes enabled (frmfgaincode)
delta bit allocation syntax enabled (dbaflde)
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)
phase flags in use (phsflginu)
int phase_flags [AC3_MAX_CPL_BANDS]
phase flags (phsflg)
number of coupling bands (ncplbnd)
uint8_t cpl_band_sizes [AC3_MAX_CPL_BANDS]
number of coeffs in each coupling band
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
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)
spx start frequency bin
spx end frequency bin
spx starting frequency bin for copying (copystartmant) the copy region ends at the start of the spx region.
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
number of full-bandwidth channels
number of total channels
index of LFE channel
float downmix_coeffs [AC3_MAX_CHANNELS][2]
stereo downmix coefficients
indicates if coeffs are currently downmixed
output channel configuration
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
number of rematrixing bands (nrematbnd)
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
bit allocation parameters
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)
for dither generation
IMDCT
int block_switch [AC3_MAX_CHANNELS]
block switch flags (blksw)
for 512 sample IMDCT
for 256 sample IMDCT
Optimization
for optimization
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

Definition at line 202 of file ac3dec.h.

Referenced by ac3_decode_init(), and decode_audio_block().

parent context

Definition at line 70 of file ac3dec.h.

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

int16_t AC3DecodeContext::band_psd[AC3_MAX_CHANNELS][AC3_CRITICAL_BANDS]

interpolated exponents

Definition at line 180 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 178 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 174 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 102 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 195 of file ac3dec.h.

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

block switch syntax enabled (blkswe)

Definition at line 100 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 in coupling (chincpl)

Definition at line 111 of file ac3dec.h.

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

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 mode (acmod)

Definition at line 83 of file ac3dec.h.

Referenced by ac3_decode_frame(), ac3_parse_header(), ac3_upmix_delay(), decode_audio_block(), ff_eac3_parse_header(), parse_frame_header(), and set_downmix_coeffs().

channel AHT in use (chahtinu)

Definition at line 138 of file ac3dec.h.

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

channel uses spectral extension (chinspx)

Definition at line 124 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_apply_spectral_extension().

number of total channels

Definition at line 144 of file ac3dec.h.

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

class for AVOptions

Definition at line 69 of file ac3dec.h.

number of coeffs in each coupling band

Definition at line 115 of file ac3dec.h.

Referenced by calc_transform_coeffs_cpl(), and decode_audio_block().

int AC3DecodeContext::cpl_coords[AC3_MAX_CHANNELS][AC3_MAX_CPL_BANDS]

coupling coordinates (cplco)

Definition at line 118 of file ac3dec.h.

Referenced by calc_transform_coeffs_cpl(), and decode_audio_block().

coupling in use (cplinu)

Definition at line 109 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_parse_header().

coupling strategy exists (cplstre)

Definition at line 110 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 185 of file ac3dec.h.

Referenced by decode_audio_block().

int AC3DecodeContext::dba_mode[AC3_MAX_CHANNELS]

delta bit allocation mode

Definition at line 182 of file ac3dec.h.

Referenced by decode_audio_block().

int AC3DecodeContext::dba_nsegs[AC3_MAX_CHANNELS]

number of delta segments

Definition at line 183 of file ac3dec.h.

Referenced by decode_audio_block().

uint8_t AC3DecodeContext::dba_offsets[AC3_MAX_CHANNELS][8]

delta segment offsets

Definition at line 184 of file ac3dec.h.

Referenced by decode_audio_block().

delta bit allocation syntax enabled (dbaflde)

Definition at line 104 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 186 of file ac3dec.h.

Referenced by decode_audio_block().

float AC3DecodeContext::delay[AC3_MAX_CHANNELS][AC3_BLOCK_SIZE]

delay - added to the next block

Definition at line 210 of file ac3dec.h.

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

int8_t AC3DecodeContext::dexps[AC3_MAX_CHANNELS][AC3_MAX_COEFS]

decoded exponents

Definition at line 169 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 191 of file ac3dec.h.

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

dither flags (dithflg)

Definition at line 190 of file ac3dec.h.

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

dither flag syntax enabled (dithflage)

Definition at line 101 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 146 of file ac3dec.h.

Referenced by decode_audio_block(), and set_downmix_coeffs().

indicates if coeffs are currently downmixed

Definition at line 147 of file ac3dec.h.

Referenced by ac3_decode_init(), and decode_audio_block().

percentage of dynamic range compression to be applied

Definition at line 154 of file ac3dec.h.

Referenced by decode_audio_block().

for optimization

Definition at line 201 of file ac3dec.h.

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

dynamic range

Definition at line 153 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().

int AC3DecodeContext::end_freq[AC3_MAX_CHANNELS]

end frequency bin (endmant)

Definition at line 159 of file ac3dec.h.

Referenced by ac3_decode_transform_coeffs_ch(), decode_audio_block(), decode_transform_coeffs(), do_rematrixing(), and parse_frame_header().

int AC3DecodeContext::exp_strategy[AC3_MAX_BLOCKS][AC3_MAX_CHANNELS]

exponent strategies (expstr)

Definition at line 170 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 177 of file ac3dec.h.

Referenced by decode_audio_block().

fast gain codes enabled (frmfgaincode)

Definition at line 103 of file ac3dec.h.

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

number of full-bandwidth channels

Definition at line 143 of file ac3dec.h.

Referenced by ac3_decode_frame(), calc_transform_coeffs_cpl(), decode_audio_block(), ff_eac3_apply_spectral_extension(), ff_eac3_parse_header(), parse_frame_header(), remove_dithering(), and set_downmix_coeffs().

first coupling coordinates states (firstcplcos)

Definition at line 117 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_parse_header().

first coupling leak state (firstcplleak)

Definition at line 175 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 132 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_parse_header().

first channel in coupling

Definition at line 116 of file ac3dec.h.

int AC3DecodeContext::fixed_coeffs[AC3_MAX_CHANNELS][AC3_MAX_COEFS]

fixed-point transform coefficients

Definition at line 208 of file ac3dec.h.

Referenced by ac3_decode_transform_coeffs_ch(), calc_transform_coeffs_cpl(), decode_audio_block(), decode_transform_coeffs(), decode_transform_coeffs_ch(), do_rematrixing(), and remove_dithering().

optimized conversion functions

Definition at line 203 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().

bitstream reader

Definition at line 72 of file ac3dec.h.

Referenced by ac3_decode_frame(), ac3_decode_transform_coeffs_ch(), ac3_parse_header(), decode_audio_block(), ff_eac3_decode_transform_coeffs_aht_ch(), ff_eac3_parse_header(), and parse_frame_header().

for 256 sample IMDCT

Definition at line 197 of file ac3dec.h.

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

for 512 sample IMDCT

Definition at line 196 of file ac3dec.h.

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

uint8_t AC3DecodeContext::input_buffer[AC3_FRAME_BUFFER_SIZE+FF_INPUT_BUFFER_PADDING_SIZE]

temp buffer to prevent overread

Definition at line 214 of file ac3dec.h.

Referenced by ac3_decode_frame().

index of LFE channel

Definition at line 145 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().

Definition at line 95 of file ac3dec.h.

Referenced by ac3_decode_frame().

Definition at line 96 of file ac3dec.h.

Referenced by ac3_decode_frame().

Definition at line 93 of file ac3dec.h.

Referenced by ac3_decode_frame().

Definition at line 94 of file ac3dec.h.

Referenced by ac3_decode_frame().

int16_t AC3DecodeContext::mask[AC3_MAX_CHANNELS][AC3_CRITICAL_BANDS]

masking curve values

Definition at line 181 of file ac3dec.h.

Referenced by decode_audio_block().

scaling for float_to_int16 conversion

Definition at line 204 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 114 of file ac3dec.h.

Referenced by calc_transform_coeffs_cpl(), and decode_audio_block().

Number of exponent groups (nexpgrp).

Definition at line 168 of file ac3dec.h.

Referenced by decode_audio_block(), and parse_frame_header().

number of rematrixing bands (nrematbnd)

Definition at line 163 of file ac3dec.h.

Referenced by decode_audio_block(), and do_rematrixing().

number of spx bands (nspxbnds)

Definition at line 130 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_apply_spectral_extension().

number of output channels

Definition at line 149 of file ac3dec.h.

Referenced by ac3_decode_frame(), and decode_audio_block().

float AC3DecodeContext::output[AC3_MAX_CHANNELS][AC3_BLOCK_SIZE]

output after imdct transform and windowing

Definition at line 213 of file ac3dec.h.

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

output channel configuration

Definition at line 148 of file ac3dec.h.

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

int AC3DecodeContext::phase_flags[AC3_MAX_CPL_BANDS]

phase flags (phsflg)

Definition at line 113 of file ac3dec.h.

Referenced by calc_transform_coeffs_cpl(), and decode_audio_block().

phase flags in use (phsflginu)

Definition at line 112 of file ac3dec.h.

Referenced by decode_audio_block().

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

pre-IDCT mantissas

Definition at line 139 of file ac3dec.h.

Referenced by decode_transform_coeffs_ch(), and ff_eac3_decode_transform_coeffs_aht_ch().

Definition at line 92 of file ac3dec.h.

int16_t AC3DecodeContext::psd[AC3_MAX_CHANNELS][AC3_MAX_COEFS]

scaled exponents

Definition at line 179 of file ac3dec.h.

Referenced by decode_audio_block().

rematrixing flags (rematflg)

Definition at line 164 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 105 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 176 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_parse_header().

SNR offset strategy (snroffststr).

Definition at line 99 of file ac3dec.h.

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

int8_t AC3DecodeContext::spx_atten_code[AC3_MAX_CHANNELS]

spx attenuation code (spxattencod)

Definition at line 125 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 131 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_apply_spectral_extension().

spx end frequency bin

Definition at line 127 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 128 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_apply_spectral_extension().

spectral extension in use (spxinu)

Definition at line 123 of file ac3dec.h.

Referenced by decode_audio_block().

float AC3DecodeContext::spx_noise_blend[AC3_MAX_CHANNELS][SPX_MAX_BANDS]

spx noise blending factor (nblendfact)

Definition at line 133 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_apply_spectral_extension().

float AC3DecodeContext::spx_signal_blend[AC3_MAX_CHANNELS][SPX_MAX_BANDS]

spx signal blending factor (sblendfact)

Definition at line 134 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_apply_spectral_extension().

spx start frequency bin

Definition at line 126 of file ac3dec.h.

Referenced by decode_audio_block(), and ff_eac3_apply_spectral_extension().

int AC3DecodeContext::start_freq[AC3_MAX_CHANNELS]

start frequency bin (strtmant)

Definition at line 158 of file ac3dec.h.

Referenced by ac3_decode_transform_coeffs_ch(), calc_transform_coeffs_cpl(), decode_audio_block(), decode_transform_coeffs_ch(), ff_eac3_decode_transform_coeffs_aht_ch(), parse_frame_header(), and remove_dithering().

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 ac3_decode_frame(), ff_eac3_parse_header(), parse_frame_header(), and set_downmix_coeffs().

float AC3DecodeContext::tmp_output[AC3_BLOCK_SIZE]

temporary storage for output before windowing

Definition at line 212 of file ac3dec.h.

Referenced by do_imdct().

float AC3DecodeContext::transform_coeffs[AC3_MAX_CHANNELS][AC3_MAX_COEFS]

transform coefficients

Definition at line 209 of file ac3dec.h.

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

float AC3DecodeContext::window[AC3_BLOCK_SIZE]

window coefficients

Definition at line 211 of file ac3dec.h.

Referenced by ac3_decode_init(), and do_imdct().


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

Generated on Fri Oct 26 02:50:14 2012 for FFmpeg by doxygen 1.5.8

AltStyle によって変換されたページ (->オリジナル) /