FFmpeg  4.0
Data Fields
QDM2Context Struct Reference

QDM2 decoder context. More...

Data Fields

int nb_channels
 Parameters from codec header, do not change during playback. More...
 
int channels
 number of channels More...
 
int group_size
 size of frame group (16 frames per group) More...
 
int fft_size
 size of FFT, in complex numbers More...
 
int checksum_size
 size of data block, used also for checksum More...
 
int group_order
 Parameters built from header parameters, do not change during playback. More...
 
int fft_order
 order of FFT (actually fftorder+1) More...
 
int frame_size
 size of data frame More...
 
int frequency_range
 
int sub_sampling
 subsampling: 0=25%, 1=50%, 2=100% */ More...
 
int coeff_per_sb_select
 selector for "num. of coeffs. per subband" tables. Can be 0, 1, 2 More...
 
int cm_table_select
 selector for "coding method" tables. Can be 0, 1 (from init: 0-4) More...
 
QDM2SubPacket sub_packets [16]
 Packets and packet lists. More...
 
QDM2SubPNode sub_packet_list_A [16]
 list of all packets More...
 
QDM2SubPNode sub_packet_list_B [16]
 FFT packets B are on list. More...
 
int sub_packets_B
 number of packets on 'B' list More...
 
QDM2SubPNode sub_packet_list_C [16]
 packets with errors? More...
 
QDM2SubPNode sub_packet_list_D [16]
 DCT packets. More...
 
FFTTone fft_tones [1000]
 FFT and tones. More...
 
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. More...
 
int compressed_size
 
float output_buffer [QDM2_MAX_FRAME_SIZE *MPA_MAX_CHANNELS *2]
 
MPADSPContext mpadsp
 Synthesis filter. More...
 
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. More...
 
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 More...
 
int superblocktype_2_3
 select fft tables and some algorithm based on superblock type More...
 
int do_synth_filter
 used to perform or skip synthesis filter More...
 
int sub_packet
 
int noise_idx
 index for dithering noise table More...
 

Detailed Description

QDM2 decoder context.

Definition at line 128 of file qdm2.c.

Field Documentation

◆ nb_channels

int QDM2Context::nb_channels

◆ channels

int QDM2Context::channels

◆ group_size

int QDM2Context::group_size

size of frame group (16 frames per group)

Definition at line 132 of file qdm2.c.

Referenced by qdm2_decode_init(), and qdm2_fft_decode_tones().

◆ fft_size

int QDM2Context::fft_size

size of FFT, in complex numbers

Definition at line 133 of file qdm2.c.

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

◆ checksum_size

int QDM2Context::checksum_size

size of data block, used also for checksum

Definition at line 134 of file qdm2.c.

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

◆ group_order

int QDM2Context::group_order

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

order of frame group

Definition at line 137 of file qdm2.c.

Referenced by qdm2_decode_init(), and qdm2_fft_decode_tones().

◆ fft_order

int QDM2Context::fft_order

order of FFT (actually fftorder+1)

Definition at line 138 of file qdm2.c.

Referenced by qdm2_decode_init().

◆ frame_size

int QDM2Context::frame_size

size of data frame

Definition at line 139 of file qdm2.c.

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

◆ frequency_range

int QDM2Context::frequency_range

Definition at line 140 of file qdm2.c.

Referenced by qdm2_decode_init(), and qdm2_fft_decode_tones().

◆ sub_sampling

int QDM2Context::sub_sampling

◆ coeff_per_sb_select

int QDM2Context::coeff_per_sb_select

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

Definition at line 142 of file qdm2.c.

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

◆ cm_table_select

int QDM2Context::cm_table_select

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

Definition at line 143 of file qdm2.c.

Referenced by process_subpacket_11(), and qdm2_decode_init().

◆ sub_packets

QDM2SubPacket QDM2Context::sub_packets[16]

Packets and packet lists.

the packets themselves

Definition at line 146 of file qdm2.c.

Referenced by qdm2_decode_super_block().

◆ sub_packet_list_A

QDM2SubPNode QDM2Context::sub_packet_list_A[16]

list of all packets

Definition at line 147 of file qdm2.c.

Referenced by qdm2_decode_super_block().

◆ sub_packet_list_B

QDM2SubPNode QDM2Context::sub_packet_list_B[16]

FFT packets B are on list.

Definition at line 148 of file qdm2.c.

Referenced by qdm2_decode_fft_packets(), and qdm2_decode_super_block().

◆ sub_packets_B

int QDM2Context::sub_packets_B

number of packets on 'B' list

Definition at line 149 of file qdm2.c.

Referenced by qdm2_decode_fft_packets(), and qdm2_decode_super_block().

◆ sub_packet_list_C

QDM2SubPNode QDM2Context::sub_packet_list_C[16]

packets with errors?

Definition at line 150 of file qdm2.c.

Referenced by qdm2_decode().

◆ sub_packet_list_D

QDM2SubPNode QDM2Context::sub_packet_list_D[16]

DCT packets.

Definition at line 151 of file qdm2.c.

Referenced by qdm2_decode_super_block().

◆ fft_tones

FFTTone QDM2Context::fft_tones[1000]

FFT and tones.

Definition at line 154 of file qdm2.c.

Referenced by qdm2_fft_generate_tone(), and qdm2_fft_tone_synthesizer().

◆ fft_tone_start

int QDM2Context::fft_tone_start

Definition at line 155 of file qdm2.c.

Referenced by qdm2_fft_tone_synthesizer().

◆ fft_tone_end

int QDM2Context::fft_tone_end

Definition at line 156 of file qdm2.c.

Referenced by qdm2_fft_generate_tone(), and qdm2_fft_tone_synthesizer().

◆ fft_coefs

FFTCoefficient QDM2Context::fft_coefs[1000]

Definition at line 157 of file qdm2.c.

Referenced by qdm2_fft_init_coefficient(), and qdm2_fft_tone_synthesizer().

◆ fft_coefs_index

int QDM2Context::fft_coefs_index

Definition at line 158 of file qdm2.c.

Referenced by qdm2_decode_fft_packets(), and qdm2_fft_init_coefficient().

◆ fft_coefs_min_index

int QDM2Context::fft_coefs_min_index[5]

◆ fft_coefs_max_index

int QDM2Context::fft_coefs_max_index[5]

Definition at line 160 of file qdm2.c.

Referenced by qdm2_decode_fft_packets().

◆ fft_level_exp

int QDM2Context::fft_level_exp[6]

Definition at line 161 of file qdm2.c.

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

◆ rdft_ctx

RDFTContext QDM2Context::rdft_ctx

Definition at line 162 of file qdm2.c.

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

◆ fft

QDM2FFT QDM2Context::fft

Definition at line 163 of file qdm2.c.

Referenced by qdm2_calculate_fft(), and qdm2_fft_tone_synthesizer().

◆ compressed_data

const uint8_t* QDM2Context::compressed_data

I/O data.

Definition at line 166 of file qdm2.c.

Referenced by qdm2_decode(), and qdm2_decode_super_block().

◆ compressed_size

int QDM2Context::compressed_size

Definition at line 167 of file qdm2.c.

Referenced by qdm2_decode(), and qdm2_decode_super_block().

◆ output_buffer

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

Definition at line 168 of file qdm2.c.

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

◆ mpadsp

MPADSPContext QDM2Context::mpadsp

Synthesis filter.

Definition at line 171 of file qdm2.c.

Referenced by qdm2_decode_init(), and qdm2_synthesis_filter().

◆ synth_buf

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

Definition at line 172 of file qdm2.c.

Referenced by qdm2_synthesis_filter().

◆ synth_buf_offset

int QDM2Context::synth_buf_offset[MPA_MAX_CHANNELS]

Definition at line 173 of file qdm2.c.

Referenced by qdm2_synthesis_filter().

◆ sb_samples

float QDM2Context::sb_samples[MPA_MAX_CHANNELS][128][SBLIMIT]

◆ samples

float QDM2Context::samples[MPA_MAX_CHANNELS *MPA_FRAME_SIZE]

Definition at line 175 of file qdm2.c.

Referenced by qdm2_synthesis_filter().

◆ tone_level

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

Mixed temporary data used in decoding.

Definition at line 178 of file qdm2.c.

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

◆ coding_method

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

Definition at line 179 of file qdm2.c.

Referenced by process_subpacket_11(), and synthfilt_build_sb_samples().

◆ quantized_coeffs

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

◆ tone_level_idx_base

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

Definition at line 181 of file qdm2.c.

Referenced by fill_tone_level_array().

◆ tone_level_idx_hi1

int8_t QDM2Context::tone_level_idx_hi1[MPA_MAX_CHANNELS][3][8][8]

◆ tone_level_idx_mid

int8_t QDM2Context::tone_level_idx_mid[MPA_MAX_CHANNELS][26][8]

◆ tone_level_idx_hi2

int8_t QDM2Context::tone_level_idx_hi2[MPA_MAX_CHANNELS][26]

◆ tone_level_idx

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

Definition at line 185 of file qdm2.c.

Referenced by fill_tone_level_array(), and process_subpacket_11().

◆ tone_level_idx_temp

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

Definition at line 186 of file qdm2.c.

Referenced by process_subpacket_11().

◆ has_errors

int QDM2Context::has_errors

packet has errors

Definition at line 189 of file qdm2.c.

Referenced by qdm2_decode(), and qdm2_decode_super_block().

◆ superblocktype_2_3

int QDM2Context::superblocktype_2_3

select fft tables and some algorithm based on superblock type

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

◆ do_synth_filter

int QDM2Context::do_synth_filter

used to perform or skip synthesis filter

Definition at line 191 of file qdm2.c.

Referenced by qdm2_decode(), and qdm2_decode_super_block().

◆ sub_packet

int QDM2Context::sub_packet

Definition at line 193 of file qdm2.c.

Referenced by qdm2_decode().

◆ noise_idx

int QDM2Context::noise_idx

index for dithering noise table

Definition at line 194 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: