FFmpeg
Data Fields
MotionEstContext Struct Reference

Motion estimation context. More...

#include <motion_est.h>

Data Fields

AVCodecContextavctx
 
int skip
 set if ME is skipped for the current MB More...
 
int co_located_mv [4][2]
 mv from last P-frame for direct mode ME More...
 
int direct_basis_mv [4][2]
 
uint8_t * scratchpad
 data area for the ME algo, so that the ME does not need to malloc/free. More...
 
uint8_t * temp
 
uint32_t * map
 map to avoid duplicate evaluations More...
 
uint32_t * score_map
 map to store the scores More...
 
unsigned map_generation
 
int pre_penalty_factor
 
int penalty_factor
 an estimate of the bits required to code a given mv value, e.g. More...
 
int sub_penalty_factor
 
int mb_penalty_factor
 
int flags
 
int sub_flags
 
int mb_flags
 
int pre_pass
 = 1 for the pre pass More...
 
int dia_size
 
int xmin
 
int xmax
 
int ymin
 
int ymax
 
int pred_x
 
int pred_y
 
const uint8_t * src [4][4]
 
const uint8_t * ref [4][4]
 
int stride
 
int uvstride
 
int64_t mc_mb_var_sum_temp
 
int64_t mb_var_sum_temp
 
int scene_change_score
 
op_pixels_func(* hpel_put )[4]
 
op_pixels_func(* hpel_avg )[4]
 
qpel_mc_func(* qpel_put )[16]
 
qpel_mc_func(* qpel_avg )[16]
 
const uint8_t(* mv_penalty )[MAX_DMV *2+1]
 bit amount needed to encode a MV More...
 
const uint8_t * current_mv_penalty
 
int(* sub_motion_search )(struct MpegEncContext *s, int *mx_ptr, int *my_ptr, int dmin, int src_index, int ref_index, int size, int h)
 

Detailed Description

Motion estimation context.

Definition at line 47 of file motion_est.h.

Field Documentation

◆ avctx

AVCodecContext* MotionEstContext::avctx

Definition at line 48 of file motion_est.h.

◆ skip

int MotionEstContext::skip

set if ME is skipped for the current MB

Definition at line 49 of file motion_est.h.

◆ co_located_mv

int MotionEstContext::co_located_mv[4][2]

mv from last P-frame for direct mode ME

Definition at line 50 of file motion_est.h.

◆ direct_basis_mv

int MotionEstContext::direct_basis_mv[4][2]

Definition at line 51 of file motion_est.h.

◆ scratchpad

uint8_t* MotionEstContext::scratchpad

data area for the ME algo, so that the ME does not need to malloc/free.

Definition at line 52 of file motion_est.h.

Referenced by encode_end(), and encode_init().

◆ temp

uint8_t* MotionEstContext::temp

Definition at line 54 of file motion_est.h.

Referenced by encode_end(), and encode_init().

◆ map

uint32_t* MotionEstContext::map

map to avoid duplicate evaluations

Definition at line 55 of file motion_est.h.

Referenced by encode_end(), and encode_init().

◆ score_map

uint32_t* MotionEstContext::score_map

map to store the scores

Definition at line 56 of file motion_est.h.

Referenced by encode_init().

◆ map_generation

unsigned MotionEstContext::map_generation

Definition at line 57 of file motion_est.h.

◆ pre_penalty_factor

int MotionEstContext::pre_penalty_factor

Definition at line 58 of file motion_est.h.

◆ penalty_factor

int MotionEstContext::penalty_factor

an estimate of the bits required to code a given mv value, e.g.

(1,0) takes more bits than (0,0). We have to estimate whether any reduction in residual is worth the extra bits.

Definition at line 59 of file motion_est.h.

◆ sub_penalty_factor

int MotionEstContext::sub_penalty_factor

Definition at line 64 of file motion_est.h.

◆ mb_penalty_factor

int MotionEstContext::mb_penalty_factor

Definition at line 65 of file motion_est.h.

◆ flags

int MotionEstContext::flags

Definition at line 66 of file motion_est.h.

◆ sub_flags

int MotionEstContext::sub_flags

Definition at line 67 of file motion_est.h.

◆ mb_flags

int MotionEstContext::mb_flags

Definition at line 68 of file motion_est.h.

◆ pre_pass

int MotionEstContext::pre_pass

= 1 for the pre pass

Definition at line 69 of file motion_est.h.

◆ dia_size

int MotionEstContext::dia_size

Definition at line 70 of file motion_est.h.

Referenced by encode_frame().

◆ xmin

int MotionEstContext::xmin

Definition at line 71 of file motion_est.h.

◆ xmax

int MotionEstContext::xmax

Definition at line 72 of file motion_est.h.

◆ ymin

int MotionEstContext::ymin

Definition at line 73 of file motion_est.h.

◆ ymax

int MotionEstContext::ymax

Definition at line 74 of file motion_est.h.

◆ pred_x

int MotionEstContext::pred_x

Definition at line 75 of file motion_est.h.

◆ pred_y

int MotionEstContext::pred_y

Definition at line 76 of file motion_est.h.

◆ src

const uint8_t* MotionEstContext::src[4][4]

Definition at line 77 of file motion_est.h.

◆ ref

const uint8_t* MotionEstContext::ref[4][4]

Definition at line 78 of file motion_est.h.

◆ stride

int MotionEstContext::stride

Definition at line 79 of file motion_est.h.

◆ uvstride

int MotionEstContext::uvstride

Definition at line 80 of file motion_est.h.

◆ mc_mb_var_sum_temp

int64_t MotionEstContext::mc_mb_var_sum_temp

Definition at line 82 of file motion_est.h.

◆ mb_var_sum_temp

int64_t MotionEstContext::mb_var_sum_temp

Definition at line 83 of file motion_est.h.

◆ scene_change_score

int MotionEstContext::scene_change_score

Definition at line 84 of file motion_est.h.

Referenced by encode_frame().

◆ hpel_put

op_pixels_func(* MotionEstContext::hpel_put)[4]

Definition at line 86 of file motion_est.h.

◆ hpel_avg

op_pixels_func(* MotionEstContext::hpel_avg)[4]

Definition at line 87 of file motion_est.h.

◆ qpel_put

qpel_mc_func(* MotionEstContext::qpel_put)[16]

Definition at line 88 of file motion_est.h.

◆ qpel_avg

qpel_mc_func(* MotionEstContext::qpel_avg)[16]

Definition at line 89 of file motion_est.h.

◆ mv_penalty

const uint8_t(* MotionEstContext::mv_penalty)[MAX_DMV *2+1]

bit amount needed to encode a MV

Definition at line 90 of file motion_est.h.

◆ current_mv_penalty

const uint8_t* MotionEstContext::current_mv_penalty

Definition at line 91 of file motion_est.h.

◆ sub_motion_search

int(* MotionEstContext::sub_motion_search) (struct MpegEncContext *s, int *mx_ptr, int *my_ptr, int dmin, int src_index, int ref_index, int size, int h)

Definition at line 92 of file motion_est.h.


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