|
FFmpeg
|
Public Member Functions | |
| DECLARE_ALIGNED (16, int16_t, block)[64] | |
| DECLARE_ALIGNED (16, int16_t, qmat)[3][2][3][64] | |
| qmat[qpi][is_inter][plane] | |
| DECLARE_ALIGNED (8, int, bounding_values_array)[256+2] | |
Public Attributes | |
| AVCodecContext * | avctx |
| int | theora |
| int | theora_tables |
| int | theora_header |
| int | version |
| int | width |
| int | height |
| int | chroma_x_shift |
| int | chroma_y_shift |
| ThreadFrame | golden_frame |
| ThreadFrame | last_frame |
| ThreadFrame | current_frame |
| int | keyframe |
| uint8_t | idct_permutation [64] |
| uint8_t | idct_scantable [64] |
| HpelDSPContext | hdsp |
| VideoDSPContext | vdsp |
| VP3DSPContext | vp3dsp |
| int | flipped_image |
| int | last_slice_end |
| int | skip_loop_filter |
| int | qps [3] |
| int | nqps |
| int | last_qps [3] |
| int | superblock_count |
| int | y_superblock_width |
| int | y_superblock_height |
| int | y_superblock_count |
| int | c_superblock_width |
| int | c_superblock_height |
| int | c_superblock_count |
| int | u_superblock_start |
| int | v_superblock_start |
| unsigned char * | superblock_coding |
| int | macroblock_count |
| int | macroblock_width |
| int | macroblock_height |
| int | fragment_count |
| int | fragment_width [2] |
| int | fragment_height [2] |
| Vp3Fragment * | all_fragments |
| int | fragment_start [3] |
| int | data_offset [3] |
| uint8_t | offset_x |
| uint8_t | offset_y |
| int | offset_x_warned |
| int8_t(*[2] | motion_val )[2] |
| uint16_t | coded_dc_scale_factor [64] |
| uint32_t | coded_ac_scale_factor [64] |
| uint8_t | base_matrix [384][64] |
| uint8_t | qr_count [2][3] |
| uint8_t | qr_size [2][3][64] |
| uint16_t | qr_base [2][3][64] |
| int16_t * | dct_tokens [3][64] |
| This is a list of all tokens in bitstream order. More... | |
| int16_t * | dct_tokens_base |
| int | num_coded_frags [3][64] |
| number of blocks that contain DCT coefficients at the given level or higher | |
| int | total_num_coded_frags |
| int * | coded_fragment_list [3] |
| VLC | dc_vlc [16] |
| VLC | ac_vlc_1 [16] |
| VLC | ac_vlc_2 [16] |
| VLC | ac_vlc_3 [16] |
| VLC | ac_vlc_4 [16] |
| VLC | superblock_run_length_vlc |
| VLC | fragment_run_length_vlc |
| VLC | mode_code_vlc |
| VLC | motion_vector_vlc |
| int * | superblock_fragments |
| unsigned char * | macroblock_coding |
| uint8_t * | edge_emu_buffer |
| int | hti |
| unsigned int | hbits |
| int | entries |
| int | huff_code_size |
| uint32_t | huffman_table [80][32][2] |
| uint8_t | filter_limit_values [64] |
| int16_t* Vp3DecodeContext::dct_tokens[3][64] |
This is a list of all tokens in bitstream order.
Reordering takes place by pulling from each level during IDCT. As a consequence, IDCT must be in Hilbert order, making the minimum slice height 64 for 4:2:0 and 32 otherwise. The 32 different tokens with up to 12 bits of extradata are collapsed into 3 types, packed as follows: (from the low to high bits)
2 bits: type (0,1,2) 0: EOB run, 14 bits for run length (12 needed) 1: zero run, 7 bits for run length 7 bits for the next coefficient (3 needed) 2: coefficient, 14 bits (11 needed)
Coefficients are signed, so are packed in the highest bits for automatic sign extension.
1.8.12