# HG changeset patch # User michael # Date 1264491614 0 # Node ID 2a33c1c37e6bdf70a518f44a94282e522ba7ac39 # Parent e1326b55f7f9d3d20ca65a762e72a1804f4232aa Rename isRGB() and isBGR() as their meaning is confusing. diff -r e1326b55f7f9 -r 2a33c1c37e6b libswscale/swscale.c --- a/libswscale/swscale.c Mon Jan 25 22:46:09 2010 +0000 +++ b/libswscale/swscale.c Tue Jan 26 07:40:14 2010 +0000 @@ -90,8 +90,8 @@ (x)==PIX_FMT_PAL8 \ || (x)==PIX_FMT_YUYV422 \ || (x)==PIX_FMT_UYVY422 \ - || isRGB(x) \ - || isBGR(x) \ + || isRGBinInt(x) \ + || isBGRinInt(x) \ ) #define usePal(x) (av_pix_fmt_descriptors[x].flags & PIX_FMT_PAL) @@ -1437,8 +1437,8 @@ void (*conv)(const uint8_t *src, uint8_t *dst, long src_size)=NULL; /* BGR -> BGR */ - if ( (isBGR(srcFormat) && isBGR(dstFormat)) - || (isRGB(srcFormat) && isRGB(dstFormat))) { + if ( (isBGRinInt(srcFormat) && isBGRinInt(dstFormat)) + || (isRGBinInt(srcFormat) && isRGBinInt(dstFormat))) { switch(srcId | (dstId<<4)) { case 0x34: conv= rgb16to15; break; case 0x36: conv= rgb24to15; break; @@ -1453,8 +1453,8 @@ case 0x84: conv= rgb16to32; break; case 0x86: conv= rgb24to32; break; } - } else if ( (isBGR(srcFormat) && isRGB(dstFormat)) - || (isRGB(srcFormat) && isBGR(dstFormat))) { + } else if ( (isBGRinInt(srcFormat) && isRGBinInt(dstFormat)) + || (isRGBinInt(srcFormat) && isBGRinInt(dstFormat))) { switch(srcId | (dstId<<4)) { case 0x33: conv= rgb15tobgr15; break; case 0x34: conv= rgb16tobgr15; break; @@ -1660,16 +1660,16 @@ const int dstH = c->dstH; int needsDither; - needsDither= (isBGR(dstFormat) || isRGB(dstFormat)) + needsDither= (isBGRinInt(dstFormat) || isRGBinInt(dstFormat)) && c->dstFormatBpp < 24 - && (c->dstFormatBpp < c->srcFormatBpp || (!(isRGB(srcFormat) || isBGR(srcFormat)))); + && (c->dstFormatBpp < c->srcFormatBpp || (!(isRGBinInt(srcFormat) || isBGRinInt(srcFormat)))); /* yv12_to_nv12 */ if ((srcFormat == PIX_FMT_YUV420P || srcFormat == PIX_FMT_YUVA420P) && (dstFormat == PIX_FMT_NV12 || dstFormat == PIX_FMT_NV21)) { c->swScale= PlanarToNV12Wrapper; } /* yuv2bgr */ - if ((srcFormat==PIX_FMT_YUV420P || srcFormat==PIX_FMT_YUV422P || srcFormat==PIX_FMT_YUVA420P) && (isBGR(dstFormat) || isRGB(dstFormat)) + if ((srcFormat==PIX_FMT_YUV420P || srcFormat==PIX_FMT_YUV422P || srcFormat==PIX_FMT_YUVA420P) && (isBGRinInt(dstFormat) || isRGBinInt(dstFormat)) && !(flags & SWS_ACCURATE_RND) && !(dstH&1)) { c->swScale= ff_yuv2rgb_get_func_ptr(c); } @@ -1683,8 +1683,8 @@ c->swScale= bgr24toyv12Wrapper; /* RGB/BGR -> RGB/BGR (no dither needed forms) */ - if ( (isBGR(srcFormat) || isRGB(srcFormat)) - && (isBGR(dstFormat) || isRGB(dstFormat)) + if ( (isBGRinInt(srcFormat) || isRGBinInt(srcFormat)) + && (isBGRinInt(dstFormat) || isRGBinInt(dstFormat)) && srcFormat != PIX_FMT_BGR8 && dstFormat != PIX_FMT_BGR8 && srcFormat != PIX_FMT_RGB8 && dstFormat != PIX_FMT_RGB8 && srcFormat != PIX_FMT_BGR4 && dstFormat != PIX_FMT_BGR4 diff -r e1326b55f7f9 -r 2a33c1c37e6b libswscale/swscale_internal.h --- a/libswscale/swscale_internal.h Mon Jan 25 22:46:09 2010 +0000 +++ b/libswscale/swscale_internal.h Tue Jan 26 07:40:14 2010 +0000 @@ -385,7 +385,7 @@ (x)==PIX_FMT_GRAY16BE \ || (x)==PIX_FMT_GRAY16LE \ ) -#define isRGB(x) ( \ +#define isRGBinInt(x) ( \ (x)==PIX_FMT_RGB48BE \ || (x)==PIX_FMT_RGB48LE \ || (x)==PIX_FMT_RGB32 \ @@ -399,7 +399,7 @@ || (x)==PIX_FMT_MONOBLACK \ || (x)==PIX_FMT_MONOWHITE \ ) -#define isBGR(x) ( \ +#define isBGRinInt(x) ( \ (x)==PIX_FMT_BGR32 \ || (x)==PIX_FMT_BGR32_1 \ || (x)==PIX_FMT_BGR24 \ diff -r e1326b55f7f9 -r 2a33c1c37e6b libswscale/swscale_template.c --- a/libswscale/swscale_template.c Mon Jan 25 22:46:09 2010 +0000 +++ b/libswscale/swscale_template.c Tue Jan 26 07:40:14 2010 +0000 @@ -3048,7 +3048,7 @@ break; } - if (c->srcRange != c->dstRange && !(isRGB(c->dstFormat) || isBGR(c->dstFormat))) { + if (c->srcRange != c->dstRange && !(isRGBinInt(c->dstFormat) || isBGRinInt(c->dstFormat))) { if (c->srcRange) { c->lumConvertRange = RENAME(lumRangeFromJpeg); c->chrConvertRange = RENAME(chrRangeFromJpeg); diff -r e1326b55f7f9 -r 2a33c1c37e6b libswscale/utils.c --- a/libswscale/utils.c Mon Jan 25 22:46:09 2010 +0000 +++ b/libswscale/utils.c Tue Jan 26 07:40:14 2010 +0000 @@ -121,8 +121,8 @@ || (x)==PIX_FMT_YUV444P \ || (x)==PIX_FMT_YUV422P \ || (x)==PIX_FMT_YUV411P \ - || isRGB(x) \ - || isBGR(x) \ + || isRGBinInt(x) \ + || isBGRinInt(x) \ || (x)==PIX_FMT_NV12 \ || (x)==PIX_FMT_NV21 \ || (x)==PIX_FMT_GRAY16BE \ @@ -872,14 +872,14 @@ getSubSampleFactors(&c->chrDstHSubSample, &c->chrDstVSubSample, dstFormat); // reuse chroma for 2 pixels RGB/BGR unless user wants full chroma interpolation - if ((isBGR(dstFormat) || isRGB(dstFormat)) && !(flags&SWS_FULL_CHR_H_INT)) c->chrDstHSubSample=1; + if ((isBGRinInt(dstFormat) || isRGBinInt(dstFormat)) && !(flags&SWS_FULL_CHR_H_INT)) c->chrDstHSubSample=1; // drop some chroma lines if the user wants it c->vChrDrop= (flags&SWS_SRC_V_CHR_DROP_MASK)>>SWS_SRC_V_CHR_DROP_SHIFT; c->chrSrcVSubSample+= c->vChrDrop; // drop every other pixel for chroma calculation unless user wants full chroma - if ((isBGR(srcFormat) || isRGB(srcFormat)) && !(flags&SWS_FULL_CHR_H_INP) + if ((isBGRinInt(srcFormat) || isRGBinInt(srcFormat)) && !(flags&SWS_FULL_CHR_H_INP) && srcFormat!=PIX_FMT_RGB8 && srcFormat!=PIX_FMT_BGR8 && srcFormat!=PIX_FMT_RGB4 && srcFormat!=PIX_FMT_BGR4 && srcFormat!=PIX_FMT_RGB4_BYTE && srcFormat!=PIX_FMT_BGR4_BYTE @@ -903,7 +903,7 @@ sws_setColorspaceDetails(c, ff_yuv2rgb_coeffs[SWS_CS_DEFAULT], srcRange, ff_yuv2rgb_coeffs[SWS_CS_DEFAULT] /* FIXME*/, dstRange, 0, 1<<16, 1<<16); /* unscaled special cases */ - if (unscaled && !usesHFilter && !usesVFilter && (srcRange == dstRange || isBGR(dstFormat) || isRGB(dstFormat))) { + if (unscaled && !usesHFilter && !usesVFilter && (srcRange == dstRange || isBGRinInt(dstFormat) || isRGBinInt(dstFormat))) { ff_get_unscaled_swscale(c); if (c->swScale) {