FFmpeg  4.0
Data Fields
RV34DecContext Struct Reference

decoder context More...

#include <libavcodec/rv34.h>

Data Fields

MpegEncContext s
 
RV34DSPContext rdsp
 
int8_t * intra_types_hist
 old block types, used for prediction More...
 
int8_t * intra_types
 block types More...
 
int intra_types_stride
 block types array stride More...
 
const uint8_tluma_dc_quant_i
 luma subblock DC quantizer for intraframes More...
 
const uint8_tluma_dc_quant_p
 luma subblock DC quantizer for interframes More...
 
RV34VLCcur_vlcs
 VLC set used for current frame decoding. More...
 
H264PredContext h
 functions for 4x4 and 16x16 intra block prediction More...
 
SliceInfo si
 current slice information More...
 
intmb_type
 internal macroblock types More...
 
int block_type
 current block type More...
 
int luma_vlc
 which VLC set will be used for decoding of luma blocks More...
 
int chroma_vlc
 which VLC set will be used for decoding of chroma blocks More...
 
int is16
 current block has additional 16x16 specific features or not More...
 
int dmv [4][2]
 differential motion vectors for the current macroblock More...
 
int rv30
 indicates which RV variant is currently decoded More...
 
int max_rpr
 
int cur_pts
 
int last_pts
 
int next_pts
 
int scaled_weight
 
int weight1
 
int weight2
 B-frame distance fractions (0.14) used in motion compensation. More...
 
int mv_weight1
 
int mv_weight2
 
int orig_width
 
int orig_height
 
uint16_t * cbp_luma
 CBP values for luma subblocks. More...
 
uint8_tcbp_chroma
 CBP values for chroma subblocks. More...
 
uint16_t * deblock_coefs
 deblock coefficients for each macroblock More...
 
uint32_t avail_cache [3 *4]
 8x8 block available flags (for MV prediction) More...
 
uint8_ttmp_b_block_y [2]
 temporary blocks for RV4 weighted MC More...
 
uint8_ttmp_b_block_uv [4]
 
uint8_ttmp_b_block_base
 
int(* parse_slice_header )(struct RV34DecContext *r, GetBitContext *gb, SliceInfo *si)
 
int(* decode_mb_info )(struct RV34DecContext *r)
 
int(* decode_intra_types )(struct RV34DecContext *r, GetBitContext *gb, int8_t *dst)
 
void(* loop_filter )(struct RV34DecContext *r, int row)
 

Detailed Description

decoder context

Definition at line 84 of file rv34.h.

Field Documentation

◆ s

MpegEncContext RV34DecContext::s

◆ rdsp

RV34DSPContext RV34DecContext::rdsp

◆ intra_types_hist

int8_t* RV34DecContext::intra_types_hist

old block types, used for prediction

Definition at line 87 of file rv34.h.

Referenced by ff_rv34_decode_init_thread_copy(), rv34_decode_slice(), rv34_decoder_alloc(), and rv34_decoder_free().

◆ intra_types

int8_t* RV34DecContext::intra_types

block types

Definition at line 88 of file rv34.h.

Referenced by rv34_decode_slice(), rv34_decoder_alloc(), and rv34_decoder_free().

◆ intra_types_stride

int RV34DecContext::intra_types_stride

◆ luma_dc_quant_i

const uint8_t* RV34DecContext::luma_dc_quant_i

luma subblock DC quantizer for intraframes

Definition at line 90 of file rv34.h.

Referenced by rv30_decode_init(), rv34_output_i16x16(), and rv40_decode_init().

◆ luma_dc_quant_p

const uint8_t* RV34DecContext::luma_dc_quant_p

luma subblock DC quantizer for interframes

Definition at line 91 of file rv34.h.

Referenced by rv30_decode_init(), rv34_decode_inter_macroblock(), and rv40_decode_init().

◆ cur_vlcs

RV34VLC* RV34DecContext::cur_vlcs

VLC set used for current frame decoding.

Definition at line 93 of file rv34.h.

Referenced by rv34_decode_inter_macroblock(), rv34_decode_inter_mb_header(), rv34_decode_intra_mb_header(), rv34_output_i16x16(), and rv34_process_block().

◆ h

H264PredContext RV34DecContext::h

functions for 4x4 and 16x16 intra block prediction

Definition at line 94 of file rv34.h.

Referenced by ff_rv34_decode_init(), rv34_output_i16x16(), and rv34_pred_4x4_block().

◆ si

SliceInfo RV34DecContext::si

◆ mb_type

int* RV34DecContext::mb_type

◆ block_type

int RV34DecContext::block_type

current block type

Definition at line 98 of file rv34.h.

Referenced by rv34_decode_inter_mb_header(), and rv34_decode_intra_mb_header().

◆ luma_vlc

int RV34DecContext::luma_vlc

which VLC set will be used for decoding of luma blocks

Definition at line 99 of file rv34.h.

Referenced by rv34_decode_inter_macroblock(), rv34_decode_inter_mb_header(), rv34_decode_intra_mb_header(), rv34_output_i16x16(), and rv34_output_intra().

◆ chroma_vlc

int RV34DecContext::chroma_vlc

which VLC set will be used for decoding of chroma blocks

Definition at line 100 of file rv34.h.

Referenced by rv34_decode_inter_macroblock(), rv34_decode_inter_mb_header(), rv34_decode_intra_mb_header(), rv34_output_i16x16(), and rv34_output_intra().

◆ is16

int RV34DecContext::is16

current block has additional 16x16 specific features or not

Definition at line 101 of file rv34.h.

Referenced by rv34_decode_inter_macroblock(), rv34_decode_inter_mb_header(), rv34_decode_intra_macroblock(), and rv34_decode_intra_mb_header().

◆ dmv

int RV34DecContext::dmv[4][2]

differential motion vectors for the current macroblock

Definition at line 102 of file rv34.h.

Referenced by rv34_decode_mv(), rv34_pred_mv(), rv34_pred_mv_b(), and rv34_pred_mv_rv3().

◆ rv30

int RV34DecContext::rv30

indicates which RV variant is currently decoded

Definition at line 104 of file rv34.h.

Referenced by rv30_decode_init(), rv34_decode_intra_mb_header(), rv34_decode_mv(), rv34_mc_1mv(), rv34_mc_2mv(), rv34_mc_2mv_skip(), rv34_pred_mv(), rv34_set_deblock_coef(), and rv40_decode_init().

◆ max_rpr

int RV34DecContext::max_rpr

Definition at line 105 of file rv34.h.

Referenced by rv30_decode_init(), and rv30_parse_slice_header().

◆ cur_pts

int RV34DecContext::cur_pts

Definition at line 107 of file rv34.h.

Referenced by ff_rv34_decode_frame(), and ff_rv34_decode_update_thread_context().

◆ last_pts

int RV34DecContext::last_pts

Definition at line 107 of file rv34.h.

Referenced by ff_rv34_decode_frame(), and ff_rv34_decode_update_thread_context().

◆ next_pts

int RV34DecContext::next_pts

Definition at line 107 of file rv34.h.

Referenced by ff_rv34_decode_frame(), and ff_rv34_decode_update_thread_context().

◆ scaled_weight

int RV34DecContext::scaled_weight

Definition at line 108 of file rv34.h.

Referenced by ff_rv34_decode_frame(), and rv4_weight().

◆ weight1

int RV34DecContext::weight1

Definition at line 109 of file rv34.h.

Referenced by ff_rv34_decode_frame(), rv34_mc_2mv(), rv34_mc_2mv_skip(), and rv4_weight().

◆ weight2

int RV34DecContext::weight2

B-frame distance fractions (0.14) used in motion compensation.

Definition at line 109 of file rv34.h.

Referenced by ff_rv34_decode_frame(), and rv4_weight().

◆ mv_weight1

int RV34DecContext::mv_weight1

Definition at line 110 of file rv34.h.

Referenced by calc_add_mv(), and ff_rv34_decode_frame().

◆ mv_weight2

int RV34DecContext::mv_weight2

Definition at line 110 of file rv34.h.

Referenced by calc_add_mv(), and ff_rv34_decode_frame().

◆ orig_width

int RV34DecContext::orig_width

Definition at line 112 of file rv34.h.

Referenced by rv30_decode_init(), and rv30_parse_slice_header().

◆ orig_height

int RV34DecContext::orig_height

Definition at line 112 of file rv34.h.

Referenced by rv30_decode_init(), and rv30_parse_slice_header().

◆ cbp_luma

uint16_t* RV34DecContext::cbp_luma

◆ cbp_chroma

uint8_t* RV34DecContext::cbp_chroma

◆ deblock_coefs

uint16_t* RV34DecContext::deblock_coefs

◆ avail_cache

uint32_t RV34DecContext::avail_cache[3 *4]

◆ tmp_b_block_y

uint8_t* RV34DecContext::tmp_b_block_y[2]

temporary blocks for RV4 weighted MC

Definition at line 122 of file rv34.h.

Referenced by ff_rv34_decode_frame(), rv34_mc(), and rv4_weight().

◆ tmp_b_block_uv

uint8_t* RV34DecContext::tmp_b_block_uv[4]

Definition at line 123 of file rv34.h.

Referenced by ff_rv34_decode_frame(), rv34_mc(), and rv4_weight().

◆ tmp_b_block_base

uint8_t* RV34DecContext::tmp_b_block_base

◆ parse_slice_header

int(* RV34DecContext::parse_slice_header) (struct RV34DecContext *r, GetBitContext *gb, SliceInfo *si)

◆ decode_mb_info

int(* RV34DecContext::decode_mb_info) (struct RV34DecContext *r)

Definition at line 127 of file rv34.h.

Referenced by rv30_decode_init(), rv34_decode_inter_mb_header(), and rv40_decode_init().

◆ decode_intra_types

int(* RV34DecContext::decode_intra_types) (struct RV34DecContext *r, GetBitContext *gb, int8_t *dst)

◆ loop_filter

void(* RV34DecContext::loop_filter) (struct RV34DecContext *r, int row)

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