24 #ifndef AVCODEC_VP9DEC_H 25 #define AVCODEC_VP9DEC_H 29 #include <stdatomic.h> 39 #define REF_INVALID_SCALE 0xFFFF 131 uint8_t coef[4][2][2][6][6][11];
155 uint16_t mvscale[3][2];
200 unsigned coef[4][2][2][6][6][3];
201 unsigned eob[4][2][2][6][6][2];
223 struct {
int x,
y; } min_mv, max_mv;
224 int16_t *block_base, *
block, *uvblock_base[2], *uvblock[2];
225 uint8_t *eob_base, *uveob_base[2], *eob, *uveob[2];
243 VP9Filter *lflvl, ptrdiff_t yoff, ptrdiff_t uvoff,
247 int row,
int col, ptrdiff_t yoff, ptrdiff_t uvoff);
250 ptrdiff_t y_off, ptrdiff_t uv_off);
252 ptrdiff_t y_off, ptrdiff_t uv_off);
static enum AVPixelFormat pix_fmt
struct ProbContext::@175 mv_comp[2]
void ff_vp9_intra_recon_8bpp(VP9TileData *td, ptrdiff_t y_off, ptrdiff_t uv_off)
void ff_vp9_adapt_probs(VP9Context *s)
void ff_vp9_inter_recon_8bpp(VP9TileData *td)
void ff_vp9_intra_recon_16bpp(VP9TileData *td, ptrdiff_t y_off, ptrdiff_t uv_off)
#define DECLARE_ALIGNED(n, t, v)
Declare a variable that is aligned in memory.
#define prob(name, subs,...)
void ff_vp9_loopfilter_sb(AVCodecContext *avctx, VP9Filter *lflvl, int row, int col, ptrdiff_t yoff, ptrdiff_t uvoff)
uint8_t partition[4][4][3]
static const uint16_t mask[17]
int frame_extradata_pool_size
void ff_vp9_inter_recon_16bpp(VP9TileData *td)
uint8_t * above_filter_ctx
common internal API header
unsigned int block_size_idx_x
uint8_t * above_partition_ctx
uint8_t * above_segpred_ctx
static const int8_t mv[256][2]
main external API structure.
uint8_t * above_y_nnz_ctx
void ff_vp9_fill_mv(VP9TileData *td, VP56mv *mv, int mode, int sb)
refcounted data buffer API
uint8_t * above_intra_ctx
unsigned int nb_block_structure
static int ref[MAX_W *MAX_W]
void ff_vp9_decode_block(VP9TileData *td, int row, int col, VP9Filter *lflvl, ptrdiff_t yoff, ptrdiff_t uvoff, enum BlockLevel bl, enum BlockPartition bp)
unsigned int block_size_idx_y
AVPixelFormat
Pixel format.
mode
Use these values in ebur128_init (or'ed).
int block_alloc_using_2pass
AVBufferPool * frame_extradata_pool