[FFmpeg-cvslog] r29009 - trunk/libswscale/swscale.c

Cédric Schieli cschieli
Sat Mar 21 08:36:17 CET 2009


2009/3/21 M?ns Rullg?rd <mans at mansr.com>:
> sdrik <subversion at mplayerhq.hu> writes:
>
>> Author: sdrik
>> Date: Fri Mar 20 15:01:51 2009
>> New Revision: 29009
>>
>> Log:
>> Use a simpler and more general check for the gray case in the
>> planarCopy function
>>
>> Modified:
>> ? ?trunk/libswscale/swscale.c
>>
>> Modified: trunk/libswscale/swscale.c
>> ==============================================================================
>> --- trunk/libswscale/swscale.c ? ? ? ?Fri Mar 20 00:33:35 2009 ? ? ? ?(r29008)
>> +++ trunk/libswscale/swscale.c ? ? ? ?Fri Mar 20 15:01:51 2009 ? ? ? ?(r29009)
>> @@ -1989,11 +1989,8 @@ static int planarCopy(SwsContext *c, uin
>> ? ? ? ? ?int y= ? ? ?plane==0 ? srcSliceY: -((-srcSliceY)>>c->chrDstVSubSample);
>> ? ? ? ? ?int height= plane==0 ? srcSliceH: -((-srcSliceH)>>c->chrDstVSubSample);
>>
>> - ? ? ? ?if ((isGray(c->srcFormat) || isGray(c->dstFormat)) && plane>0)
>> - ? ? ? ?{
>> - ? ? ? ? ? ?if (!isGray(c->dstFormat))
>> + ? ? ? ?if (dst[plane] && !src[plane])
>> ? ? ? ? ? ? ? ? ?fillPlane(dst[plane], dstStride[plane], length, height, y, 128);
>> - ? ? ? ?}
>> ? ? ? ? ?else
>> ? ? ? ? ?{
>> ? ? ? ? ? ? ?if (dstStride[plane]==srcStride[plane] && srcStride[plane] > 0)
>>
>
> This is breaking regression tests.

Yes. This was wrong. A proper fix is discussed here :
http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2009-March/065915.html




More information about the ffmpeg-cvslog mailing list