[FFmpeg-devel] [PATCH] swscale: fix yuv2yuvX_8 assembly on x86

Michael Niedermayer michaelni at gmx.at
Sun Nov 9 21:55:03 CET 2014


On Sun, Nov 09, 2014 at 09:50:01PM +0100, Michael Niedermayer wrote:
> On Sun, Nov 09, 2014 at 05:38:34PM -0300, James Almer wrote:
> > On 09/11/14 5:28 PM, Michael Niedermayer wrote:
> > > On Sun, Nov 09, 2014 at 08:39:35PM +0100, Kieran Kunhya wrote:
> > >> ---
> > >>  libswscale/x86/swscale.c |    2 +-
> > >>  1 file changed, 1 insertion(+), 1 deletion(-)
> > >>
> > >> diff --git a/libswscale/x86/swscale.c b/libswscale/x86/swscale.c
> > >> index 8ce87b3..c9f3b1a 100644
> > >> --- a/libswscale/x86/swscale.c
> > >> +++ b/libswscale/x86/swscale.c
> > >> @@ -430,7 +430,7 @@ switch(c->dstBpc){ \
> > >>      case 16:                          do_16_case;                          break; \
> > >>      case 10: if (!isBE(c->dstFormat)) vscalefn = ff_yuv2planeX_10_ ## opt; break; \
> > >>      case 9:  if (!isBE(c->dstFormat)) vscalefn = ff_yuv2planeX_9_  ## opt; break; \
> > >> -    default: if (condition_8bit)    /*vscalefn = ff_yuv2planeX_8_  ## opt;*/ break; \
> > >> +    case 8: if (condition_8bit)      vscalefn = ff_yuv2planeX_8_  ## opt; break; \
> > > 
> > > doesnt work:
> > > for example this generates a funny colored output and seems to not
> > > look the same when run multiple times
> > > ffmpeg -f lavfi -i testsrc -t 1 test.avi
> > 
> > Fate passes with this patch applied. Shouldn't a test that can detect this be added then?
> 
> hmm, i wonder why none of the existing tests caught this
> either way, one should be added

following passes:
./ffmpeg -f lavfi -i testsrc,scale=flags=bicubic+bitexact,format=yuv420p -t 1 testX.avi

and that fails:
./ffmpeg -f lavfi -i testsrc,scale=flags=bicubic,format=yuv420p -t 1 test.avi

so it seems to work with the bitexat flag, which explains why fate
passed but also makes adding a test more tricky

[...]

-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Rewriting code that is poorly written but fully understood is good.
Rewriting code that one doesnt understand is a sign that one is less smart
then the original author, trying to rewrite it will not make it better.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 181 bytes
Desc: Digital signature
URL: <https://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20141109/6c323982/attachment.asc>


More information about the ffmpeg-devel mailing list