[SCM] libav/experimental: fixing twice added offset bug, was triggered by 4mv + sub_cmp != mb_cmp bug was introduced in version 1.75 (2003-12-30) this may have lead to a small drop in quality of the 4mv mode, but should have only affected the mbd=0 case

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 15:38:57 UTC 2013


The following commit has been merged in the experimental branch:
commit a75b43fd7399f9836b1943184e39c551de59eaaf
Author: Michael Niedermayer <michaelni at gmx.at>
Date:   Wed Jan 14 02:21:39 2004 +0000

    fixing twice added offset bug, was triggered by 4mv + sub_cmp != mb_cmp
    bug was introduced in version 1.75 (2003-12-30)
    this may have lead to a small drop in quality of the 4mv mode, but should have only affected the mbd=0 case
    
    Originally committed as revision 2698 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavcodec/motion_est.c b/libavcodec/motion_est.c
index 17e3ceb..bb4b923 100644
--- a/libavcodec/motion_est.c
+++ b/libavcodec/motion_est.c
@@ -846,7 +846,7 @@ static inline int h263_mv4_search(MpegEncContext *s, int mx, int my, int shift)
             uint8_t *dest_y = s->me.scratchpad + offset;
 
             if(s->quarter_sample){
-                uint8_t *ref= ref_data[0] + (mx4>>2) + (my4>>2)*stride + offset;
+                uint8_t *ref= ref_data[0] + (mx4>>2) + (my4>>2)*stride;
                 dxy = ((my4 & 3) << 2) | (mx4 & 3);
 
                 if(s->no_rounding)
@@ -854,7 +854,7 @@ static inline int h263_mv4_search(MpegEncContext *s, int mx, int my, int shift)
                 else
                     s->dsp.put_qpel_pixels_tab       [1][dxy](dest_y   , ref    , stride);
             }else{
-                uint8_t *ref= ref_data[0] + (mx4>>1) + (my4>>1)*stride + offset;
+                uint8_t *ref= ref_data[0] + (mx4>>1) + (my4>>1)*stride;
                 dxy = ((my4 & 1) << 1) | (mx4 & 1);
 
                 if(s->no_rounding)

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list