Lines Matching defs:AC3EncodeContext
154 typedef struct AC3EncodeContext { struct
155 AVClass *av_class; ///< AVClass used for AVOption
156 AC3EncOptions options; ///< encoding options
157 AVCodecContext *avctx; ///< parent AVCodecContext
158 PutBitContext pb; ///< bitstream writer context
159 AudioDSPContext adsp;
161 AVFloatDSPContext *fdsp;
163 AVFixedDSPContext *fdsp;
165 MECmpContext mecc;
166 AC3DSPContext ac3dsp; ///< AC-3 optimized functions
167 FFTContext mdct; ///< FFT context for MDCT calculation
168 const SampleType *mdct_window; ///< MDCT window function array
170 AC3Block blocks[AC3_MAX_BLOCKS]; ///< per-block info
172 int fixed_point; ///< indicates if fixed-point encoder is being used
173 int eac3; ///< indicates if this is E-AC-3 vs. AC-3
174 int bitstream_id; ///< bitstream id (bsid)
175 int bitstream_mode; ///< bitstream mode (bsmod)
177 int bit_rate; ///< target bit rate, in bits-per-second
178 int sample_rate; ///< sampling frequency, in Hz
180 int num_blks_code; ///< number of blocks code (numblkscod)
181 int num_blocks; ///< number of blocks per frame
182 int frame_size_min; ///< minimum frame size in case rounding is necessary
183 int frame_size; ///< current frame size in bytes
184 int frame_size_code; ///< frame size code (frmsizecod)
185 uint16_t crc_inv[2];
186 int64_t bits_written; ///< bit count (used to avg. bitrate)
187 int64_t samples_written; ///< sample count (used to avg. bitrate)
189 int fbw_channels; ///< number of full-bandwidth channels (nfchans)
190 int channels; ///< total number of channels (nchans)
191 int lfe_on; ///< indicates if there is an LFE channel (lfeon)
192 int lfe_channel; ///< channel index of the LFE channel
193 int has_center; ///< indicates if there is a center channel
194 … int has_surround; ///< indicates if there are one or more surround channels
195 int channel_mode; ///< channel mode (acmod)
196 const uint8_t *channel_map; ///< channel map used to reorder channels
198 int center_mix_level; ///< center mix level code
199 int surround_mix_level; ///< surround mix level code
200 int ltrt_center_mix_level; ///< Lt/Rt center mix level code
201 int ltrt_surround_mix_level; ///< Lt/Rt surround mix level code
202 int loro_center_mix_level; ///< Lo/Ro center mix level code
203 int loro_surround_mix_level; ///< Lo/Ro surround mix level code
205 int cutoff; ///< user-specified cutoff frequency, in Hz
206 int bandwidth_code; ///< bandwidth code (0 to 60) (chbwcod)
207 int start_freq[AC3_MAX_CHANNELS]; ///< start frequency bin (strtmant)
208 int cpl_end_freq; ///< coupling channel end frequency bin
210 int cpl_on; ///< coupling turned on for this frame
211 int cpl_enabled; ///< coupling enabled for all frames
212 int num_cpl_subbands; ///< number of coupling subbands (ncplsubnd)
213 int num_cpl_bands; ///< number of coupling bands (ncplbnd)
214 uint8_t cpl_band_sizes[AC3_MAX_CPL_BANDS]; ///< number of coeffs in each coupling band
216 int rematrixing_enabled; ///< stereo rematrixing enabled
219 int slow_gain_code; ///< slow gain code (sgaincod)
220 int slow_decay_code; ///< slow decay code (sdcycod)
221 int fast_decay_code; ///< fast decay code (fdcycod)
222 int db_per_bit_code; ///< dB/bit code (dbpbcod)
223 int floor_code; ///< floor code (floorcod)
224 AC3BitAllocParameters bit_alloc; ///< bit allocation parameters
225 int coarse_snr_offset; ///< coarse SNR offsets (csnroffst)
226 int fast_gain_code[AC3_MAX_CHANNELS]; ///< fast gain codes (signal-to-mask ratio) (fgaincod)
227 int fine_snr_offset[AC3_MAX_CHANNELS]; ///< fine SNR offsets (fsnroffst)
228 int frame_bits_fixed; ///< number of non-coefficient bits for fixed parameters
229 int frame_bits; ///< all frame bits except exponents and mantissas
230 int exponent_bits; ///< number of bits used for exponents
232 SampleType *windowed_samples;
233 SampleType **planar_samples;
257 void (*mdct_end)(struct AC3EncodeContext *s); argument
258 int (*mdct_init)(struct AC3EncodeContext *s); argument
261 int (*allocate_sample_buffers)(struct AC3EncodeContext *s); argument
264 void (*output_frame_header)(struct AC3EncodeContext *s); argument
265 } AC3EncodeContext; typedef