VP8ThreadData Struct Reference

#include <vp8.h>

Collaboration diagram for VP8ThreadData:
Collaboration graph

Public Member Functions

 DECLARE_ALIGNED (16, int16_t, block)[6][4][16]
 
 DECLARE_ALIGNED (16, int16_t, block_dc)[16]
 
 DECLARE_ALIGNED (16, uint8_t, non_zero_count_cache)[6][4]
 This is the index plus one of the last non-zero coeff for each of the blocks in the current macroblock. More...
 
 DECLARE_ALIGNED (8, uint8_t, left_nnz)[9]
 For coeff decode, we need to know whether the above block had non-zero coefficients. More...
 

Data Fields

int thread_nr
 
int thread_mb_pos
 
int wait_mb_pos
 
uint8_tedge_emu_buffer
 
VP8FilterStrengthfilter_strength
 

Detailed Description

Definition at line 101 of file vp8.h.

Member Function Documentation

VP8ThreadData::DECLARE_ALIGNED ( 16  ,
int16_t  ,
block   
)
VP8ThreadData::DECLARE_ALIGNED ( 16  ,
int16_t  ,
block_dc   
)
VP8ThreadData::DECLARE_ALIGNED ( 16  ,
uint8_t  ,
non_zero_count_cache   
)

This is the index plus one of the last non-zero coeff for each of the blocks in the current macroblock.

So, 0 -> no coeffs 1 -> dc-only (special transform) 2+-> full transform

VP8ThreadData::DECLARE_ALIGNED ( ,
uint8_t  ,
left_nnz   
)

For coeff decode, we need to know whether the above block had non-zero coefficients.

This means for each macroblock, we need data for 4 luma blocks, 2 u blocks, 2 v blocks, and the luma dc block, for a total of 9 per macroblock. We keep the last row in top_nnz.

Field Documentation

uint8_t* VP8ThreadData::edge_emu_buffer

Definition at line 126 of file vp8.h.

Referenced by free_buffers(), vp8_decode_frame(), vp8_mc_chroma(), and vp8_mc_luma().

VP8FilterStrength* VP8ThreadData::filter_strength
int VP8ThreadData::thread_mb_pos
int VP8ThreadData::thread_nr

Definition at line 119 of file vp8.h.

Referenced by intra_predict(), and vp8_decode_mb_row_sliced().

int VP8ThreadData::wait_mb_pos

Definition at line 125 of file vp8.h.

Referenced by vp8_decode_frame().


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