[SCM] libav/experimental: fix

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 15:36:56 UTC 2013


The following commit has been merged in the experimental branch:
commit 14bc6e6371cf7b2196b5edbafd67b119a1238b0a
Author: Michael Niedermayer <michaelni at gmx.at>
Date:   Thu Jul 24 21:52:41 2003 +0000

    fix
    
    Originally committed as revision 2078 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavcodec/vcr1.c b/libavcodec/vcr1.c
index b89260e..18e250d 100644
--- a/libavcodec/vcr1.c
+++ b/libavcodec/vcr1.c
@@ -79,7 +79,7 @@ static int decode_frame(AVCodecContext *avctx,
             for(i=0; i<4; i++)
                 a->offset[i]= *(bytestream++);
 
-            offset= a->offset[0];
+            offset= a->offset[0] - a->delta[ bytestream[2]&0xF ];
             for(x=0; x<avctx->width; x+=4){
                 luma[0]=( offset += a->delta[ bytestream[2]&0xF ]);
                 luma[1]=( offset += a->delta[ bytestream[2]>>4  ]);
@@ -87,13 +87,13 @@ static int decode_frame(AVCodecContext *avctx,
                 luma[3]=( offset += a->delta[ bytestream[0]>>4  ]);
                 luma += 4;
                 
-                *(cb++) = bytestream[1];
-                *(cr++) = bytestream[3];
+                *(cb++) = bytestream[3];
+                *(cr++) = bytestream[1];
                 
                 bytestream+= 4;
             }
         }else{
-            offset= a->offset[y&3];
+            offset= a->offset[y&3] - a->delta[ bytestream[2]&0xF ];
 
             for(x=0; x<avctx->width; x+=8){
                 luma[0]=( offset += a->delta[ bytestream[2]&0xF ]);

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list