Browse Source

Fix regression when converting to nv12/nv21.

Patch by Guennadi Liakhovetski,  g D liakhovetski A gmx D de

Originally committed as revision 29464 to svn://svn.mplayerhq.hu/mplayer/trunk/libswscale
Guennadi Liakhovetski 15 years ago
parent
commit
062394e07c
1 changed files with 3 additions and 1 deletions
  1. 3 1
      libswscale/swscale.c

+ 3 - 1
libswscale/swscale.c

@@ -2759,7 +2759,9 @@ SwsContext *sws_getContext(int srcW, int srcH, enum PixelFormat srcFormat, int d
             || (isGray(dstFormat) && isGray(srcFormat))
             || (isGray(dstFormat) && isGray(srcFormat))
             || (isPlanarYUV(srcFormat) && isPlanarYUV(dstFormat)
             || (isPlanarYUV(srcFormat) && isPlanarYUV(dstFormat)
                 && c->chrDstHSubSample == c->chrSrcHSubSample
                 && c->chrDstHSubSample == c->chrSrcHSubSample
-                && c->chrDstVSubSample == c->chrSrcVSubSample))
+                && c->chrDstVSubSample == c->chrSrcVSubSample
+                && dstFormat != PIX_FMT_NV12 && dstFormat != PIX_FMT_NV21
+                && srcFormat != PIX_FMT_NV12 && srcFormat != PIX_FMT_NV21))
         {
         {
             if (isPacked(c->srcFormat))
             if (isPacked(c->srcFormat))
                 c->swScale= packedCopy;
                 c->swScale= packedCopy;