Mercurial > libavcodec.hg
comparison rv34.h @ 6714:05c3a4b419e9 libavcodec
Calculate motion vector information based on PTS provided in slice header
author | kostya |
---|---|
date | Mon, 28 Apr 2008 13:37:36 +0000 |
parents | 0e5d68320488 |
children | c4a4495715dd |
comparison
equal
deleted
inserted
replaced
6713:f282270c589f | 6714:05c3a4b419e9 |
---|---|
72 int quant; ///< quantizer used for this slice | 72 int quant; ///< quantizer used for this slice |
73 int vlc_set; ///< VLCs used for this slice | 73 int vlc_set; ///< VLCs used for this slice |
74 int start, end; ///< start and end macroblocks of the slice | 74 int start, end; ///< start and end macroblocks of the slice |
75 int width; ///< coded width | 75 int width; ///< coded width |
76 int height; ///< coded height | 76 int height; ///< coded height |
77 int pts; ///< frame timestamp | |
77 }SliceInfo; | 78 }SliceInfo; |
78 | 79 |
79 /** decoder context */ | 80 /** decoder context */ |
80 typedef struct RV34DecContext{ | 81 typedef struct RV34DecContext{ |
81 MpegEncContext s; | 82 MpegEncContext s; |
97 int dmv[4][2]; ///< differential motion vectors for the current macroblock | 98 int dmv[4][2]; ///< differential motion vectors for the current macroblock |
98 | 99 |
99 int rv30; ///< indicates which RV variasnt is currently decoded | 100 int rv30; ///< indicates which RV variasnt is currently decoded |
100 int rpr; ///< one field size in RV30 slice header | 101 int rpr; ///< one field size in RV30 slice header |
101 | 102 |
103 int cur_pts, last_pts, next_pts; | |
104 | |
102 uint16_t *cbp_luma; ///< CBP values for luma subblocks | 105 uint16_t *cbp_luma; ///< CBP values for luma subblocks |
103 uint8_t *cbp_chroma; ///< CBP values for chroma subblocks | 106 uint8_t *cbp_chroma; ///< CBP values for chroma subblocks |
104 | 107 |
105 /** 8x8 block available flags (for MV prediction) */ | 108 /** 8x8 block available flags (for MV prediction) */ |
106 DECLARE_ALIGNED_8(uint32_t, avail_cache[3*4]); | 109 DECLARE_ALIGNED_8(uint32_t, avail_cache[3*4]); |