[SCM] libav/experimental: simplify s->mv_dir init

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 16:04:33 UTC 2013


The following commit has been merged in the experimental branch:
commit 037df60e05f22e5191574507fe222621d52698a9
Author: Michael Niedermayer <michaelni at gmx.at>
Date:   Thu Aug 2 01:28:37 2007 +0000

    simplify s->mv_dir init
    
    Originally committed as revision 9867 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavcodec/mpeg12.c b/libavcodec/mpeg12.c
index afc3ed4..a370d7d 100644
--- a/libavcodec/mpeg12.c
+++ b/libavcodec/mpeg12.c
@@ -374,7 +374,7 @@ static int mpeg_decode_mb(MpegEncContext *s,
                 s->qscale = get_qscale(s);
 
             /* motion vectors */
-            s->mv_dir = 0;
+            s->mv_dir= (mb_type>>13)&3;
             dprintf(s->avctx, "motion_type=%d\n", motion_type);
             switch(motion_type) {
             case MT_FRAME: /* or MT_16X8 */
@@ -383,7 +383,6 @@ static int mpeg_decode_mb(MpegEncContext *s,
                     s->mv_type = MV_TYPE_16X16;
                     for(i=0;i<2;i++) {
                         if (USES_LIST(mb_type, i)) {
-                            s->mv_dir |= (MV_DIR_FORWARD << i);
                             /* MT_FRAME */
                             s->mv[i][0][0]= s->last_mv[i][0][0]= s->last_mv[i][1][0] =
                                 mpeg_decode_motion(s, s->mpeg_f_code[i][0], s->last_mv[i][0][0]);
@@ -401,7 +400,6 @@ static int mpeg_decode_mb(MpegEncContext *s,
                     s->mv_type = MV_TYPE_16X8;
                     for(i=0;i<2;i++) {
                         if (USES_LIST(mb_type, i)) {
-                            s->mv_dir |= (MV_DIR_FORWARD << i);
                             /* MT_16X8 */
                             for(j=0;j<2;j++) {
                                 s->field_select[i][j] = get_bits1(&s->gb);
@@ -422,7 +420,6 @@ static int mpeg_decode_mb(MpegEncContext *s,
                     mb_type |= MB_TYPE_16x8 | MB_TYPE_INTERLACED;
                     for(i=0;i<2;i++) {
                         if (USES_LIST(mb_type, i)) {
-                            s->mv_dir |= (MV_DIR_FORWARD << i);
                             for(j=0;j<2;j++) {
                                 s->field_select[i][j] = get_bits1(&s->gb);
                                 val = mpeg_decode_motion(s, s->mpeg_f_code[i][0],
@@ -442,7 +439,6 @@ static int mpeg_decode_mb(MpegEncContext *s,
                     mb_type |= MB_TYPE_16x16 | MB_TYPE_INTERLACED;
                     for(i=0;i<2;i++) {
                         if (USES_LIST(mb_type, i)) {
-                            s->mv_dir |= (MV_DIR_FORWARD << i);
                             s->field_select[i][0] = get_bits1(&s->gb);
                             for(k=0;k<2;k++) {
                                 val = mpeg_decode_motion(s, s->mpeg_f_code[i][k],
@@ -460,7 +456,6 @@ static int mpeg_decode_mb(MpegEncContext *s,
                 for(i=0;i<2;i++) {
                     if (USES_LIST(mb_type, i)) {
                         int dmx, dmy, mx, my, m;
-                        s->mv_dir |= (MV_DIR_FORWARD << i);
                         mx = mpeg_decode_motion(s, s->mpeg_f_code[i][0],
                                                 s->last_mv[i][0][0]);
                         s->last_mv[i][0][0] = mx;

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list