[FFmpeg-cvslog] vc1dec: drop mv_f_last, simplify code

Michael Niedermayer git at videolan.org
Thu Apr 25 14:24:18 CEST 2013


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Thu Apr 25 02:31:58 2013 +0200| [32a6dfeb125d485c9667a052547935b1b1bd13ca] | committer: Michael Niedermayer

vc1dec: drop mv_f_last, simplify code

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=32a6dfeb125d485c9667a052547935b1b1bd13ca
---

 libavcodec/vc1.h    |    1 -
 libavcodec/vc1dec.c |   15 ++-------------
 2 files changed, 2 insertions(+), 14 deletions(-)

diff --git a/libavcodec/vc1.h b/libavcodec/vc1.h
index 9e2ec68..7698226 100644
--- a/libavcodec/vc1.h
+++ b/libavcodec/vc1.h
@@ -354,7 +354,6 @@ typedef struct VC1Context{
     uint8_t zzi_8x8[64];
     uint8_t *blk_mv_type_base, *blk_mv_type;    ///< 0: frame MV, 1: field MV (interlaced frame)
     uint8_t *mv_f_base, *mv_f[2];               ///< 0: MV obtained from same field, 1: opposite field
-    uint8_t *mv_f_last_base, *mv_f_last[2];
     uint8_t *mv_f_next_base, *mv_f_next[2];
     int field_mode;         ///< 1 for interlaced field pictures
     int fptype;
diff --git a/libavcodec/vc1dec.c b/libavcodec/vc1dec.c
index 696a4dd..cbf45c7 100644
--- a/libavcodec/vc1dec.c
+++ b/libavcodec/vc1dec.c
@@ -5490,9 +5490,6 @@ av_cold int ff_vc1_decode_init_alloc_tables(VC1Context *v)
     v->mv_f_base        = av_mallocz(2 * (s->b8_stride * (s->mb_height * 2 + 1) + s->mb_stride * (s->mb_height + 1) * 2));
     v->mv_f[0]          = v->mv_f_base + s->b8_stride + 1;
     v->mv_f[1]          = v->mv_f[0] + (s->b8_stride * (s->mb_height * 2 + 1) + s->mb_stride * (s->mb_height + 1) * 2);
-    v->mv_f_last_base   = av_mallocz(2 * (s->b8_stride * (s->mb_height * 2 + 1) + s->mb_stride * (s->mb_height + 1) * 2));
-    v->mv_f_last[0]     = v->mv_f_last_base + s->b8_stride + 1;
-    v->mv_f_last[1]     = v->mv_f_last[0] + (s->b8_stride * (s->mb_height * 2 + 1) + s->mb_stride * (s->mb_height + 1) * 2);
     v->mv_f_next_base   = av_mallocz(2 * (s->b8_stride * (s->mb_height * 2 + 1) + s->mb_stride * (s->mb_height + 1) * 2));
     v->mv_f_next[0]     = v->mv_f_next_base + s->b8_stride + 1;
     v->mv_f_next[1]     = v->mv_f_next[0] + (s->b8_stride * (s->mb_height * 2 + 1) + s->mb_stride * (s->mb_height + 1) * 2);
@@ -5705,7 +5702,6 @@ av_cold int ff_vc1_decode_end(AVCodecContext *avctx)
     av_freep(&v->mb_type_base);
     av_freep(&v->blk_mv_type_base);
     av_freep(&v->mv_f_base);
-    av_freep(&v->mv_f_last_base);
     av_freep(&v->mv_f_next_base);
     av_freep(&v->block);
     av_freep(&v->cbp_base);
@@ -6102,15 +6098,8 @@ static int vc1_decode_frame(AVCodecContext *avctx, void *data,
             s->linesize                      >>= 1;
             s->uvlinesize                    >>= 1;
             if (v->s.pict_type != AV_PICTURE_TYPE_BI && v->s.pict_type != AV_PICTURE_TYPE_B) {
-                uint8_t *tmp[2];
-                tmp[0]          = v->mv_f_last[0];
-                tmp[1]          = v->mv_f_last[1];
-                v->mv_f_last[0] = v->mv_f_next[0];
-                v->mv_f_last[1] = v->mv_f_next[1];
-                v->mv_f_next[0] = v->mv_f[0];
-                v->mv_f_next[1] = v->mv_f[1];
-                v->mv_f[0] = tmp[0];
-                v->mv_f[1] = tmp[1];
+                FFSWAP(uint8_t *, v->mv_f_next[0], v->mv_f[0]);
+                FFSWAP(uint8_t *, v->mv_f_next[1], v->mv_f[1]);
             }
         }
         av_dlog(s->avctx, "Consumed %i/%i bits\n",



More information about the ffmpeg-cvslog mailing list