FFmpeg
Data Fields
VP8Context Struct Reference

#include <vp8.h>

Data Fields

struct vpx_codec_ctx  decoder
 
 
struct vpx_codec_ctx  encoder
 
struct vpx_image  rawimg
 
struct vpx_codec_ctx  encoder_alpha
 
struct vpx_image  rawimg_alpha
 
 
struct vpx_fixed_buf  twopass_stats
 
int  deadline
 
uint64_t  sse [4]
 
int  have_sse
  true if we have pending sse[]
 
uint64_t  frame_number
 
 
int  cpu_used
 
int  flags
  VP8 specific flags, see VP8F_* below.
 
int  auto_alt_ref
 
 
 
int  arnr_type
 
 
 
int  crf
 
 
int  lossless
 
int  tile_columns
 
int  tile_rows
 
 
 
 
VP8Frameframep [4]
 
 
 
 
uint16_t  mb_width
 
uint16_t  mb_height
 
int  linesize
 
int  uvlinesize
 
 
 
 
 
 
 
int8_t  sign_bias [4]
  one state [0, 1] per ref frame type
 
int  ref_count [3]
 
struct {
   uint8_t   enabled
 
   uint8_t   absolute_vals
 
   uint8_t   update_map
 
   int8_t   base_quant [4]
 
   int8_t   filter_level [4]
  base loop filter level
 
 
struct {
   uint8_t   simple
 
   uint8_t   level
 
   uint8_t   sharpness
 
filter
 
 
 
 
struct {
   int16_t   luma_qmul [2]
 
   int16_t   luma_dc_qmul [2]
  luma dc-only block quant
 
   int16_t   chroma_qmul [2]
 
qmat [4]
 
struct {
   uint8_t   enabled
  whether each mb can have a different strength based on mode/ref
 
   int8_t   mode [VP8_MVMODE_SPLIT+1]
  filter strength adjustment for the following macroblock modes: [0-3] - i16x16 (always zero) [4] - i4x4 [5] - zero mv [6] - inter modes except for zero or split mv [7] - split mv i16x16 modes never have any adjustment
 
   int8_t   ref [4]
  filter strength adjustment for macroblocks that reference: [0] - intra / VP56_FRAME_CURRENT [1] - VP56_FRAME_PREVIOUS [2] - VP56_FRAME_GOLDEN [3] - altref / VP56_FRAME_GOLDEN2
 
lf_delta
 
uint8_t(*  top_border )[16+8+8]
 
uint8_t(*  top_nnz )[9]
 
  header context, includes mb modes and motion vectors
 
struct {
   uint8_t   segmentid [3]
 
   uint8_t   mbskip
 
   uint8_t   intra
 
   uint8_t   last
 
   uint8_t   golden
 
   uint8_t   pred16x16 [4]
 
   uint8_t   pred8x8c [3]
 
   uint8_t   token [4][16][3][NUM_DCT_TOKENS-1]
 
   uint8_t   mvc [2][19]
 
prob [2]
 
 
int  invisible
 
int  update_last
  update VP56_FRAME_PREVIOUS with the current one
 
  VP56_FRAME_NONE if not updated, or which frame to copy if so.
 
 
  If this flag is not set, all the probability updates are discarded after this frame is decoded.
 
  All coefficients are contained in separate arith coding contexts.
 
 
 
 
 
 
 
int  num_jobs
 
int  mb_layout
  This describes the macroblock memory layout.
 

Detailed Description

Definition at line 36 of file libvpxdec.c.

Field Documentation

struct vpx_codec_ctx VP8Context::decoder

Definition at line 37 of file libvpxdec.c.

Referenced by vp8_decode(), vp8_free(), and vpx_init().

AVClass* VP8Context::class

Definition at line 62 of file libvpxenc.c.

struct vpx_codec_ctx VP8Context::encoder

Definition at line 63 of file libvpxenc.c.

Referenced by codecctl_int(), log_encoder_error(), queue_frames(), vp8_encode(), vp8_free(), and vpx_init().

struct vpx_image VP8Context::rawimg

Definition at line 64 of file libvpxenc.c.

Referenced by vp8_encode(), and vpx_init().

struct vpx_codec_ctx VP8Context::encoder_alpha

Definition at line 65 of file libvpxenc.c.

Referenced by queue_frames(), vp8_encode(), vp8_free(), and vpx_init().

struct vpx_image VP8Context::rawimg_alpha

Definition at line 66 of file libvpxenc.c.

Referenced by vp8_encode(), and vpx_init().

uint8_t VP8Context::is_alpha

Definition at line 67 of file libvpxenc.c.

Referenced by queue_frames(), vp8_encode(), vp8_free(), and vpx_init().

struct vpx_fixed_buf VP8Context::twopass_stats

Definition at line 68 of file libvpxenc.c.

Referenced by queue_frames(), vp8_encode(), vp8_free(), and vpx_init().

int VP8Context::deadline

Definition at line 69 of file libvpxenc.c.

Referenced by vp8_encode(), and vpx_init().

uint64_t VP8Context::sse[4]

Definition at line 70 of file libvpxenc.c.

Referenced by cx_pktcpy(), and queue_frames().

int VP8Context::have_sse

true if we have pending sse[]

Definition at line 71 of file libvpxenc.c.

Referenced by cx_pktcpy(), and queue_frames().

uint64_t VP8Context::frame_number

Definition at line 72 of file libvpxenc.c.

Referenced by cx_pktcpy().

struct FrameListData* VP8Context::coded_frame_list

Definition at line 73 of file libvpxenc.c.

Referenced by queue_frames(), and vp8_free().

int VP8Context::cpu_used

Definition at line 75 of file libvpxenc.c.

Referenced by vpx_init().

int VP8Context::flags

VP8 specific flags, see VP8F_* below.

Definition at line 79 of file libvpxenc.c.

Referenced by vpx_init().

int VP8Context::auto_alt_ref

Definition at line 83 of file libvpxenc.c.

Referenced by vpx_init().

int VP8Context::arnr_max_frames

Definition at line 85 of file libvpxenc.c.

Referenced by vpx_init().

int VP8Context::arnr_strength

Definition at line 86 of file libvpxenc.c.

Referenced by vpx_init().

int VP8Context::arnr_type

Definition at line 87 of file libvpxenc.c.

Referenced by vpx_init().

int VP8Context::lag_in_frames

Definition at line 89 of file libvpxenc.c.

Referenced by vpx_init().

int VP8Context::error_resilient

Definition at line 90 of file libvpxenc.c.

Referenced by vpx_init().

int VP8Context::crf

Definition at line 91 of file libvpxenc.c.

Referenced by vpx_init().

int VP8Context::max_intra_rate

Definition at line 92 of file libvpxenc.c.

Referenced by vpx_init().

int VP8Context::lossless

Definition at line 95 of file libvpxenc.c.

Referenced by vpx_init().

int VP8Context::tile_columns

Definition at line 96 of file libvpxenc.c.

Referenced by vpx_init().

int VP8Context::tile_rows

Definition at line 97 of file libvpxenc.c.

Referenced by vpx_init().

int VP8Context::frame_parallel

Definition at line 98 of file libvpxenc.c.

Referenced by vpx_init().

VP8ThreadData* VP8Context::thread_data

Definition at line 138 of file vp8.h.

Referenced by ff_vp8_decode_frame(), free_buffers(), update_dimensions(), vp8_decode_mb_row_no_filter(), vp8_decode_mb_row_sliced(), and vp8_filter_mb_row().

AVCodecContext* VP8Context::avctx

Definition at line 139 of file vp8.h.

Referenced by decode_frame_header(), ff_vp8_decode_init(), update_dimensions(), vp8_alloc_frame(), vp8_decode_init_thread_copy(), and vp8_release_frame().

VP8Frame* VP8Context::framep[4]

Definition at line 140 of file vp8.h.

Referenced by ff_vp8_decode_frame(), inter_predict(), prefetch_motion(), vp8_decode_flush_impl(), and vp8_decode_update_thread_context().

VP8Frame* VP8Context::next_framep[4]

Definition at line 141 of file vp8.h.

Referenced by ff_vp8_decode_frame().

VP8Frame* VP8Context::curframe

Definition at line 142 of file vp8.h.

Referenced by ff_vp8_decode_frame(), vp8_decode_mb_row_no_filter(), vp8_decode_mb_row_sliced(), and vp8_filter_mb_row().

VP8Frame* VP8Context::prev_frame

Definition at line 143 of file vp8.h.

Referenced by ff_vp8_decode_frame(), and vp8_decode_mb_row_no_filter().

uint16_t VP8Context::mb_width

Definition at line 145 of file vp8.h.

Referenced by decode_frame_header(), decode_intra4x4_modes(), decode_mvs(), decode_splitmvs(), ff_vp8_decode_frame(), inter_predict(), intra_predict(), update_dimensions(), vp8_alloc_frame(), vp8_decode_mb_row_no_filter(), vp8_decode_mv_mb_modes(), vp8_decode_update_thread_context(), and vp8_filter_mb_row().

uint16_t VP8Context::mb_height

Definition at line 146 of file vp8.h.

Referenced by decode_frame_header(), ff_vp8_decode_frame(), inter_predict(), update_dimensions(), vp8_alloc_frame(), vp8_decode_mb_row_no_filter(), vp8_decode_mb_row_sliced(), vp8_decode_mv_mb_modes(), vp8_decode_update_thread_context(), and vp8_filter_mb_row().

int VP8Context::linesize

Definition at line 147 of file vp8.h.

Referenced by ff_vp8_decode_frame(), filter_mb(), filter_mb_simple(), idct_mb(), inter_predict(), intra_predict(), prefetch_motion(), vp8_decode_mb_row_no_filter(), vp8_filter_mb_row(), and vp8_mc_part().

int VP8Context::uvlinesize

Definition at line 148 of file vp8.h.

Referenced by ff_vp8_decode_frame(), filter_mb(), idct_mb(), inter_predict(), intra_predict(), prefetch_motion(), vp8_decode_mb_row_no_filter(), vp8_filter_mb_row(), and vp8_mc_part().

uint8_t VP8Context::keyframe

Definition at line 150 of file vp8.h.

Referenced by decode_frame_header(), decode_mb_mode(), ff_vp8_decode_frame(), and filter_mb().

uint8_t VP8Context::deblock_filter

Definition at line 151 of file vp8.h.

Referenced by ff_vp8_decode_frame(), intra_predict(), vp8_decode_mb_row_no_filter(), and vp8_decode_mb_row_sliced().

uint8_t VP8Context::mbskip_enabled

Definition at line 152 of file vp8.h.

Referenced by decode_frame_header(), and decode_mb_mode().

uint8_t VP8Context::profile

Definition at line 153 of file vp8.h.

Referenced by decode_frame_header(), inter_predict(), and vp8_mc_part().

VP56mv VP8Context::mv_min

Definition at line 154 of file vp8.h.

Referenced by clamp_mv(), ff_vp8_decode_frame(), vp8_decode_mb_row_no_filter(), vp8_decode_mb_row_sliced(), and vp8_decode_mv_mb_modes().

VP56mv VP8Context::mv_max

Definition at line 155 of file vp8.h.

Referenced by clamp_mv(), ff_vp8_decode_frame(), vp8_decode_mb_row_no_filter(), vp8_decode_mb_row_sliced(), and vp8_decode_mv_mb_modes().

int8_t VP8Context::sign_bias[4]

one state [0, 1] per ref frame type

Definition at line 157 of file vp8.h.

Referenced by decode_frame_header(), decode_mvs(), and vp8_decode_update_thread_context().

int VP8Context::ref_count[3]

Definition at line 158 of file vp8.h.

Referenced by decode_mb_mode(), ff_vp8_decode_frame(), and prefetch_motion().

uint8_t VP8Context::enabled

whether each mb can have a different strength based on mode/ref

Definition at line 166 of file vp8.h.

Referenced by decode_frame_header(), decode_mb_mode(), ff_vp8_decode_frame(), filter_level_for_mb(), get_quants(), and vp8_decode_mb_row_no_filter().

uint8_t VP8Context::absolute_vals

Definition at line 167 of file vp8.h.

Referenced by filter_level_for_mb(), get_quants(), and parse_segment_info().

uint8_t VP8Context::update_map

Definition at line 168 of file vp8.h.

Referenced by decode_frame_header(), decode_mb_mode(), ff_vp8_decode_frame(), parse_segment_info(), and vp8_decode_mb_row_no_filter().

int8_t VP8Context::base_quant[4]

Definition at line 169 of file vp8.h.

Referenced by get_quants(), and parse_segment_info().

int8_t VP8Context::filter_level[4]

base loop filter level

Definition at line 170 of file vp8.h.

Referenced by filter_level_for_mb(), and parse_segment_info().

struct { ... } VP8Context::segmentation

Referenced by decode_frame_header(), decode_mb_mode(), ff_vp8_decode_frame(), filter_level_for_mb(), get_quants(), parse_segment_info(), vp8_decode_mb_row_no_filter(), and vp8_decode_update_thread_context().

uint8_t VP8Context::simple

Definition at line 174 of file vp8.h.

Referenced by decode_frame_header(), intra_predict(), vp8_decode_mb_row_no_filter(), and vp8_filter_mb_row().

uint8_t VP8Context::level

Definition at line 175 of file vp8.h.

Referenced by decode_frame_header(), ff_vp8_decode_frame(), and filter_level_for_mb().

uint8_t VP8Context::sharpness

Definition at line 176 of file vp8.h.

Referenced by decode_frame_header(), and filter_level_for_mb().

struct { ... } VP8Context::filter

Referenced by decode_frame_header(), ff_vp8_decode_frame(), filter_level_for_mb(), intra_predict(), vp8_decode_mb_row_no_filter(), and vp8_filter_mb_row().

VP8Macroblock* VP8Context::macroblocks

Definition at line 179 of file vp8.h.

Referenced by ff_vp8_decode_frame(), free_buffers(), update_dimensions(), vp8_decode_mb_row_no_filter(), and vp8_filter_mb_row().

uint8_t* VP8Context::intra4x4_pred_mode_top

Definition at line 181 of file vp8.h.

Referenced by decode_intra4x4_modes(), decode_mb_mode(), ff_vp8_decode_frame(), free_buffers(), and update_dimensions().

uint8_t VP8Context::intra4x4_pred_mode_left[4]

Definition at line 182 of file vp8.h.

Referenced by decode_intra4x4_modes(), decode_mb_mode(), vp8_decode_mb_row_no_filter(), and vp8_decode_mv_mb_modes().

int16_t VP8Context::luma_qmul[2]

Definition at line 191 of file vp8.h.

Referenced by decode_mb_coeffs(), and get_quants().

int16_t VP8Context::luma_dc_qmul[2]

luma dc-only block quant

Definition at line 192 of file vp8.h.

Referenced by decode_mb_coeffs(), and get_quants().

int16_t VP8Context::chroma_qmul[2]

Definition at line 193 of file vp8.h.

Referenced by decode_mb_coeffs(), and get_quants().

struct { ... } VP8Context::qmat[4]

Referenced by decode_mb_coeffs(), and get_quants().

int8_t VP8Context::mode[VP8_MVMODE_SPLIT+1]

filter strength adjustment for the following macroblock modes: [0-3] - i16x16 (always zero) [4] - i4x4 [5] - zero mv [6] - inter modes except for zero or split mv [7] - split mv i16x16 modes never have any adjustment

Definition at line 208 of file vp8.h.

Referenced by filter_level_for_mb(), and update_lf_deltas().

int8_t VP8Context::ref[4]

filter strength adjustment for macroblocks that reference: [0] - intra / VP56_FRAME_CURRENT [1] - VP56_FRAME_PREVIOUS [2] - VP56_FRAME_GOLDEN [3] - altref / VP56_FRAME_GOLDEN2

Definition at line 217 of file vp8.h.

Referenced by filter_level_for_mb(), and update_lf_deltas().

struct { ... } VP8Context::lf_delta

Referenced by decode_frame_header(), filter_level_for_mb(), update_lf_deltas(), and vp8_decode_update_thread_context().

uint8_t(* VP8Context::top_border)[16+8+8]

Definition at line 220 of file vp8.h.

Referenced by free_buffers(), intra_predict(), update_dimensions(), vp8_decode_mb_row_no_filter(), and vp8_filter_mb_row().

uint8_t(* VP8Context::top_nnz)[9]

Definition at line 221 of file vp8.h.

Referenced by ff_vp8_decode_frame(), free_buffers(), update_dimensions(), and vp8_decode_mb_row_no_filter().

VP56RangeCoder VP8Context::c

header context, includes mb modes and motion vectors

Definition at line 223 of file vp8.h.

Referenced by decode_frame_header(), decode_mb_mode(), decode_mvs(), get_quants(), parse_segment_info(), ref_to_update(), setup_partitions(), update_lf_deltas(), and update_refs().

uint8_t VP8Context::segmentid[3]

Definition at line 232 of file vp8.h.

Referenced by decode_mb_mode(), and parse_segment_info().

uint8_t VP8Context::mbskip

Definition at line 233 of file vp8.h.

Referenced by decode_frame_header(), and decode_mb_mode().

uint8_t VP8Context::intra

Definition at line 234 of file vp8.h.

Referenced by decode_frame_header(), and decode_mb_mode().

uint8_t VP8Context::last

Definition at line 235 of file vp8.h.

Referenced by decode_frame_header(), and decode_mb_mode().

uint8_t VP8Context::golden

Definition at line 236 of file vp8.h.

Referenced by decode_frame_header(), and decode_mb_mode().

uint8_t VP8Context::pred16x16[4]

Definition at line 237 of file vp8.h.

Referenced by decode_frame_header(), and decode_mb_mode().

uint8_t VP8Context::pred8x8c[3]

Definition at line 238 of file vp8.h.

Referenced by decode_frame_header(), and decode_mb_mode().

uint8_t VP8Context::token[4][16][3][NUM_DCT_TOKENS-1]

Definition at line 239 of file vp8.h.

Referenced by decode_frame_header(), and decode_mb_coeffs().

uint8_t VP8Context::mvc[2][19]

Definition at line 240 of file vp8.h.

Referenced by decode_frame_header(), decode_mvs(), and decode_splitmvs().

struct { ... } VP8Context::prob[2]

Referenced by decode_frame_header(), decode_mb_coeffs(), decode_mb_mode(), decode_mvs(), decode_splitmvs(), ff_vp8_decode_frame(), parse_segment_info(), and vp8_decode_update_thread_context().

VP8Macroblock* VP8Context::macroblocks_base

Definition at line 243 of file vp8.h.

Referenced by decode_frame_header(), free_buffers(), update_dimensions(), vp8_decode_mb_row_no_filter(), vp8_decode_mv_mb_modes(), vp8_decode_update_thread_context(), and vp8_filter_mb_row().

int VP8Context::invisible

Definition at line 244 of file vp8.h.

Referenced by decode_frame_header(), and ff_vp8_decode_frame().

int VP8Context::update_last

update VP56_FRAME_PREVIOUS with the current one

Definition at line 245 of file vp8.h.

Referenced by decode_frame_header(), and ff_vp8_decode_frame().

int VP8Context::update_golden

VP56_FRAME_NONE if not updated, or which frame to copy if so.

Definition at line 246 of file vp8.h.

Referenced by decode_frame_header(), ff_vp8_decode_frame(), and update_refs().

int VP8Context::update_altref

Definition at line 247 of file vp8.h.

Referenced by decode_frame_header(), ff_vp8_decode_frame(), and update_refs().

int VP8Context::update_probabilities

If this flag is not set, all the probability updates are discarded after this frame is decoded.

Definition at line 253 of file vp8.h.

Referenced by decode_frame_header(), and ff_vp8_decode_frame().

int VP8Context::num_coeff_partitions

All coefficients are contained in separate arith coding contexts.

There can be 1, 2, 4, or 8 of these after the header context.

Definition at line 259 of file vp8.h.

Referenced by ff_vp8_decode_frame(), setup_partitions(), update_dimensions(), and vp8_decode_mb_row_no_filter().

VP56RangeCoder VP8Context::coeff_partition[8]

Definition at line 260 of file vp8.h.

Referenced by setup_partitions(), and vp8_decode_mb_row_no_filter().

VideoDSPContext VP8Context::vdsp

Definition at line 261 of file vp8.h.

Referenced by ff_vp8_decode_init(), prefetch_motion(), vp8_decode_mb_row_no_filter(), vp8_mc_chroma(), and vp8_mc_luma().

VP8DSPContext VP8Context::vp8dsp

Definition at line 262 of file vp8.h.

Referenced by decode_frame_header(), decode_mb_coeffs(), ff_vp8_decode_init(), filter_mb(), filter_mb_simple(), idct_mb(), and intra_predict().

H264PredContext VP8Context::hpc

Definition at line 263 of file vp8.h.

Referenced by ff_vp8_decode_init(), and intra_predict().

vp8_mc_func VP8Context::put_pixels_tab[3][3][3]

Definition at line 264 of file vp8.h.

Referenced by decode_frame_header(), inter_predict(), and vp8_mc_part().

VP8Frame VP8Context::frames[5]

Definition at line 265 of file vp8.h.

Referenced by ff_vp8_decode_frame(), ff_vp8_decode_free(), vp8_decode_flush_impl(), vp8_decode_update_thread_context(), and vp8_init_frames().

int VP8Context::num_jobs

Definition at line 267 of file vp8.h.

Referenced by ff_vp8_decode_frame(), vp8_decode_mb_row_no_filter(), vp8_decode_mb_row_sliced(), and vp8_filter_mb_row().

int VP8Context::mb_layout

This describes the macroblock memory layout.

0 -> Only width+height*2+1 macroblocks allocated (frame/single thread). 1 -> Macroblocks for entire frame alloced (sliced thread).

Definition at line 273 of file vp8.h.

Referenced by decode_mb_mode(), ff_vp8_decode_frame(), update_dimensions(), vp8_decode_mb_row_no_filter(), and vp8_filter_mb_row().


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

Generated on Sun Mar 23 2014 23:50:42 for FFmpeg by   doxygen 1.8.2

AltStyle によって変換されたページ (->オリジナル) /