FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Fields
QDM2Context Struct Reference

QDM2 decoder context. More...

Data Fields

int nb_channels
 Parameters from codec header, do not change during playback.
 
int channels
 number of channels
 
int group_size
 size of frame group (16 frames per group)
 
int fft_size
 size of FFT, in complex numbers
 
int checksum_size
 size of data block, used also for checksum
 
int group_order
 Parameters built from header parameters, do not change during playback.
 
int fft_order
 order of FFT (actually fftorder+1)
 
int frame_size
 size of data frame
 
int frequency_range
 
int sub_sampling
 subsampling: 0=25%, 1=50%, 2=100% */
 
int coeff_per_sb_select
 selector for "num. of coeffs. per subband" tables. Can be 0, 1, 2
 
int cm_table_select
 selector for "coding method" tables. Can be 0, 1 (from init: 0-4)
 
QDM2SubPacket sub_packets [16]
 Packets and packet lists.
 
QDM2SubPNode sub_packet_list_A [16]
 list of all packets
 
QDM2SubPNode sub_packet_list_B [16]
 FFT packets B are on list.
 
int sub_packets_B
 number of packets on 'B' list
 
QDM2SubPNode sub_packet_list_C [16]
 packets with errors?
 
QDM2SubPNode sub_packet_list_D [16]
 DCT packets.
 
FFTTone fft_tones [1000]
 FFT and tones.
 
int fft_tone_start
 
int fft_tone_end
 
FFTCoefficient fft_coefs [1000]
 
int fft_coefs_index
 
int fft_coefs_min_index [5]
 
int fft_coefs_max_index [5]
 
int fft_level_exp [6]
 
RDFTContext rdft_ctx
 
QDM2FFT fft
 
const uint8_tcompressed_data
 I/O data.
 
int compressed_size
 
float output_buffer [QDM2_MAX_FRAME_SIZE *MPA_MAX_CHANNELS *2]
 
MPADSPContext mpadsp
 Synthesis filter.
 
float synth_buf [MPA_MAX_CHANNELS][512 *2]
 
int synth_buf_offset [MPA_MAX_CHANNELS]
 
float sb_samples [MPA_MAX_CHANNELS][128][SBLIMIT]
 
float samples [MPA_MAX_CHANNELS *MPA_FRAME_SIZE]
 
float tone_level [MPA_MAX_CHANNELS][30][64]
 Mixed temporary data used in decoding.
 
int8_t coding_method [MPA_MAX_CHANNELS][30][64]
 
int8_t quantized_coeffs [MPA_MAX_CHANNELS][10][8]
 
int8_t tone_level_idx_base [MPA_MAX_CHANNELS][30][8]
 
int8_t tone_level_idx_hi1 [MPA_MAX_CHANNELS][3][8][8]
 
int8_t tone_level_idx_mid [MPA_MAX_CHANNELS][26][8]
 
int8_t tone_level_idx_hi2 [MPA_MAX_CHANNELS][26]
 
int8_t tone_level_idx [MPA_MAX_CHANNELS][30][64]
 
int8_t tone_level_idx_temp [MPA_MAX_CHANNELS][30][64]
 
int has_errors
 packet has errors
 
int superblocktype_2_3
 select fft tables and some algorithm based on superblock type
 
int do_synth_filter
 used to perform or skip synthesis filter
 
int sub_packet
 
int noise_idx
 index for dithering noise table
 

Detailed Description

QDM2 decoder context.

Definition at line 131 of file qdm2.c.

Field Documentation

int QDM2Context::nb_channels
int QDM2Context::channels
int QDM2Context::group_size

size of frame group (16 frames per group)

Definition at line 135 of file qdm2.c.

Referenced by qdm2_decode_init(), and qdm2_fft_decode_tones().

int QDM2Context::fft_size

size of FFT, in complex numbers

Definition at line 136 of file qdm2.c.

Referenced by qdm2_calculate_fft(), qdm2_decode_init(), and qdm2_fft_tone_synthesizer().

int QDM2Context::checksum_size

size of data block, used also for checksum

Definition at line 137 of file qdm2.c.

Referenced by qdm2_decode(), qdm2_decode_frame(), qdm2_decode_init(), and qdm2_decode_super_block().

int QDM2Context::group_order

Parameters built from header parameters, do not change during playback.

order of frame group

Definition at line 140 of file qdm2.c.

Referenced by qdm2_decode_init(), and qdm2_fft_decode_tones().

int QDM2Context::fft_order

order of FFT (actually fftorder+1)

Definition at line 141 of file qdm2.c.

Referenced by qdm2_decode_init().

int QDM2Context::frame_size

size of data frame

Definition at line 142 of file qdm2.c.

Referenced by qdm2_decode(), qdm2_decode_frame(), qdm2_decode_init(), and qdm2_synthesis_filter().

int QDM2Context::frequency_range

Definition at line 143 of file qdm2.c.

Referenced by qdm2_decode_init(), and qdm2_fft_decode_tones().

int QDM2Context::sub_sampling
int QDM2Context::coeff_per_sb_select

selector for "num. of coeffs. per subband" tables. Can be 0, 1, 2

Definition at line 145 of file qdm2.c.

Referenced by average_quantized_coeffs(), fill_tone_level_array(), process_subpacket_9(), and qdm2_decode_init().

int QDM2Context::cm_table_select

selector for "coding method" tables. Can be 0, 1 (from init: 0-4)

Definition at line 146 of file qdm2.c.

Referenced by process_subpacket_11(), and qdm2_decode_init().

QDM2SubPacket QDM2Context::sub_packets[16]

Packets and packet lists.

the packets themselves

Definition at line 149 of file qdm2.c.

Referenced by qdm2_decode_super_block().

QDM2SubPNode QDM2Context::sub_packet_list_A[16]

list of all packets

Definition at line 150 of file qdm2.c.

Referenced by qdm2_decode_super_block().

QDM2SubPNode QDM2Context::sub_packet_list_B[16]

FFT packets B are on list.

Definition at line 151 of file qdm2.c.

Referenced by qdm2_decode_fft_packets(), and qdm2_decode_super_block().

int QDM2Context::sub_packets_B

number of packets on 'B' list

Definition at line 152 of file qdm2.c.

Referenced by qdm2_decode_fft_packets(), and qdm2_decode_super_block().

QDM2SubPNode QDM2Context::sub_packet_list_C[16]

packets with errors?

Definition at line 153 of file qdm2.c.

Referenced by qdm2_decode().

QDM2SubPNode QDM2Context::sub_packet_list_D[16]

DCT packets.

Definition at line 154 of file qdm2.c.

Referenced by qdm2_decode_super_block().

FFTTone QDM2Context::fft_tones[1000]

FFT and tones.

Definition at line 157 of file qdm2.c.

Referenced by qdm2_fft_generate_tone(), and qdm2_fft_tone_synthesizer().

int QDM2Context::fft_tone_start

Definition at line 158 of file qdm2.c.

Referenced by qdm2_fft_tone_synthesizer().

int QDM2Context::fft_tone_end

Definition at line 159 of file qdm2.c.

Referenced by qdm2_fft_generate_tone(), and qdm2_fft_tone_synthesizer().

FFTCoefficient QDM2Context::fft_coefs[1000]

Definition at line 160 of file qdm2.c.

Referenced by qdm2_fft_init_coefficient(), and qdm2_fft_tone_synthesizer().

int QDM2Context::fft_coefs_index

Definition at line 161 of file qdm2.c.

Referenced by qdm2_decode_fft_packets(), and qdm2_fft_init_coefficient().

int QDM2Context::fft_coefs_min_index[5]
int QDM2Context::fft_coefs_max_index[5]

Definition at line 163 of file qdm2.c.

Referenced by qdm2_decode_fft_packets().

int QDM2Context::fft_level_exp[6]

Definition at line 164 of file qdm2.c.

Referenced by qdm2_decode_fft_packets(), qdm2_decode_super_block(), and qdm2_fft_decode_tones().

RDFTContext QDM2Context::rdft_ctx

Definition at line 165 of file qdm2.c.

Referenced by qdm2_calculate_fft(), qdm2_decode_close(), and qdm2_decode_init().

QDM2FFT QDM2Context::fft

Definition at line 166 of file qdm2.c.

Referenced by qdm2_calculate_fft(), and qdm2_fft_tone_synthesizer().

const uint8_t* QDM2Context::compressed_data

I/O data.

Definition at line 169 of file qdm2.c.

Referenced by qdm2_decode(), and qdm2_decode_super_block().

int QDM2Context::compressed_size

Definition at line 170 of file qdm2.c.

Referenced by qdm2_decode(), and qdm2_decode_super_block().

float QDM2Context::output_buffer[QDM2_MAX_FRAME_SIZE *MPA_MAX_CHANNELS *2]

Definition at line 171 of file qdm2.c.

Referenced by qdm2_calculate_fft(), qdm2_decode(), and qdm2_synthesis_filter().

MPADSPContext QDM2Context::mpadsp

Synthesis filter.

Definition at line 174 of file qdm2.c.

Referenced by qdm2_decode_init(), and qdm2_synthesis_filter().

float QDM2Context::synth_buf[MPA_MAX_CHANNELS][512 *2]

Definition at line 175 of file qdm2.c.

Referenced by qdm2_synthesis_filter().

int QDM2Context::synth_buf_offset[MPA_MAX_CHANNELS]

Definition at line 176 of file qdm2.c.

Referenced by qdm2_synthesis_filter().

float QDM2Context::sb_samples[MPA_MAX_CHANNELS][128][SBLIMIT]
float QDM2Context::samples[MPA_MAX_CHANNELS *MPA_FRAME_SIZE]

Definition at line 178 of file qdm2.c.

Referenced by qdm2_synthesis_filter().

float QDM2Context::tone_level[MPA_MAX_CHANNELS][30][64]

Mixed temporary data used in decoding.

Definition at line 181 of file qdm2.c.

Referenced by build_sb_samples_from_noise(), fill_tone_level_array(), and synthfilt_build_sb_samples().

int8_t QDM2Context::coding_method[MPA_MAX_CHANNELS][30][64]

Definition at line 182 of file qdm2.c.

Referenced by process_subpacket_11(), and synthfilt_build_sb_samples().

int8_t QDM2Context::quantized_coeffs[MPA_MAX_CHANNELS][10][8]
int8_t QDM2Context::tone_level_idx_base[MPA_MAX_CHANNELS][30][8]

Definition at line 184 of file qdm2.c.

Referenced by fill_tone_level_array().

int8_t QDM2Context::tone_level_idx_hi1[MPA_MAX_CHANNELS][3][8][8]
int8_t QDM2Context::tone_level_idx_mid[MPA_MAX_CHANNELS][26][8]
int8_t QDM2Context::tone_level_idx_hi2[MPA_MAX_CHANNELS][26]
int8_t QDM2Context::tone_level_idx[MPA_MAX_CHANNELS][30][64]

Definition at line 188 of file qdm2.c.

Referenced by fill_tone_level_array(), and process_subpacket_11().

int8_t QDM2Context::tone_level_idx_temp[MPA_MAX_CHANNELS][30][64]

Definition at line 189 of file qdm2.c.

Referenced by process_subpacket_11().

int QDM2Context::has_errors

packet has errors

Definition at line 192 of file qdm2.c.

Referenced by qdm2_decode(), and qdm2_decode_super_block().

int QDM2Context::superblocktype_2_3

select fft tables and some algorithm based on superblock type

Definition at line 193 of file qdm2.c.

Referenced by fill_tone_level_array(), process_subpacket_11(), qdm2_decode_super_block(), qdm2_fft_decode_tones(), and qdm2_fft_tone_synthesizer().

int QDM2Context::do_synth_filter

used to perform or skip synthesis filter

Definition at line 194 of file qdm2.c.

Referenced by qdm2_decode(), and qdm2_decode_super_block().

int QDM2Context::sub_packet

Definition at line 196 of file qdm2.c.

Referenced by qdm2_decode().

int QDM2Context::noise_idx

index for dithering noise table

Definition at line 197 of file qdm2.c.

Referenced by build_sb_samples_from_noise(), and synthfilt_build_sb_samples().


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