diff options
author | Stefan Gehrer <stefan.gehrer@gmx.de> | 2007-07-07 08:58:54 +0400 |
---|---|---|
committer | Stefan Gehrer <stefan.gehrer@gmx.de> | 2007-07-07 08:58:54 +0400 |
commit | 2a3cc9730f804bc476bf316b75a54b15c90f3253 (patch) | |
tree | 2a7c9f7963b026b9856831ebc670d75478e1ffef /libavcodec/cavs.c | |
parent | ac83e7b235eef9ed54e287486a68f47ddfcf3ce1 (diff) |
move context structure definition from cavs.c to cavs.h
Originally committed as revision 9511 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/cavs.c')
-rw-r--r-- | libavcodec/cavs.c | 73 |
1 files changed, 0 insertions, 73 deletions
diff --git a/libavcodec/cavs.c b/libavcodec/cavs.c index d8136910ec..94c84cd0c8 100644 --- a/libavcodec/cavs.c +++ b/libavcodec/cavs.c @@ -28,82 +28,9 @@ #include "avcodec.h" #include "bitstream.h" #include "golomb.h" -#include "mpegvideo.h" #include "cavs.h" #include "cavsdata.h" -typedef struct { - MpegEncContext s; - Picture picture; ///< currently decoded frame - Picture DPB[2]; ///< reference frames - int dist[2]; ///< temporal distances from current frame to ref frames - int profile, level; - int aspect_ratio; - int mb_width, mb_height; - int pic_type; - int progressive; - int pic_structure; - int skip_mode_flag; ///< select between skip_count or one skip_flag per MB - int loop_filter_disable; - int alpha_offset, beta_offset; - int ref_flag; - int mbx, mby; ///< macroblock coordinates - int flags; ///< availability flags of neighbouring macroblocks - int stc; ///< last start code - uint8_t *cy, *cu, *cv; ///< current MB sample pointers - int left_qp; - uint8_t *top_qp; - - /** mv motion vector cache - 0: D3 B2 B3 C2 - 4: A1 X0 X1 - - 8: A3 X2 X3 - - - X are the vectors in the current macroblock (5,6,9,10) - A is the macroblock to the left (4,8) - B is the macroblock to the top (1,2) - C is the macroblock to the top-right (3) - D is the macroblock to the top-left (0) - - the same is repeated for backward motion vectors */ - vector_t mv[2*4*3]; - vector_t *top_mv[2]; - vector_t *col_mv; - - /** luma pred mode cache - 0: -- B2 B3 - 3: A1 X0 X1 - 6: A3 X2 X3 */ - int pred_mode_Y[3*3]; - int *top_pred_Y; - int l_stride, c_stride; - int luma_scan[4]; - int qp; - int qp_fixed; - int cbp; - ScanTable scantable; - - /** intra prediction is done with un-deblocked samples - they are saved here before deblocking the MB */ - uint8_t *top_border_y, *top_border_u, *top_border_v; - uint8_t left_border_y[26], left_border_u[10], left_border_v[10]; - uint8_t intern_border_y[26]; - uint8_t topleft_border_y, topleft_border_u, topleft_border_v; - - void (*intra_pred_l[8])(uint8_t *d,uint8_t *top,uint8_t *left,int stride); - void (*intra_pred_c[7])(uint8_t *d,uint8_t *top,uint8_t *left,int stride); - uint8_t *col_type_base; - uint8_t *col_type; - - /* scaling factors for MV prediction */ - int sym_factor; ///< for scaling in symmetrical B block - int direct_den[2]; ///< for scaling in direct B block - int scale_den[2]; ///< for scaling neighbouring MVs - - int got_keyframe; - DCTELEM *block; -} AVSContext; - /***************************************************************************** * * in-loop deblocking filter |