mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-21 10:55:51 +02:00
swscale: remove unconditional #define DITHER1XBPP
This seems to have had an use in the past, but it is now defined unconditionally.
This commit is contained in:
parent
7405f1ad53
commit
4f7f9b1026
@ -46,8 +46,6 @@
|
|||||||
|
|
||||||
#define MAX_FILTER_SIZE SWS_MAX_FILTER_SIZE
|
#define MAX_FILTER_SIZE SWS_MAX_FILTER_SIZE
|
||||||
|
|
||||||
#define DITHER1XBPP
|
|
||||||
|
|
||||||
#if HAVE_BIGENDIAN
|
#if HAVE_BIGENDIAN
|
||||||
#define ALT32_CORR (-1)
|
#define ALT32_CORR (-1)
|
||||||
#else
|
#else
|
||||||
|
@ -1952,14 +1952,10 @@ static av_cold int sws_init_single_context(SwsContext *c, SwsFilter *srcFilter,
|
|||||||
av_log(c, AV_LOG_INFO, "%s scaler, from %s to %s%s ",
|
av_log(c, AV_LOG_INFO, "%s scaler, from %s to %s%s ",
|
||||||
scaler,
|
scaler,
|
||||||
av_get_pix_fmt_name(srcFormat),
|
av_get_pix_fmt_name(srcFormat),
|
||||||
#ifdef DITHER1XBPP
|
|
||||||
dstFormat == AV_PIX_FMT_BGR555 || dstFormat == AV_PIX_FMT_BGR565 ||
|
dstFormat == AV_PIX_FMT_BGR555 || dstFormat == AV_PIX_FMT_BGR565 ||
|
||||||
dstFormat == AV_PIX_FMT_RGB444BE || dstFormat == AV_PIX_FMT_RGB444LE ||
|
dstFormat == AV_PIX_FMT_RGB444BE || dstFormat == AV_PIX_FMT_RGB444LE ||
|
||||||
dstFormat == AV_PIX_FMT_BGR444BE || dstFormat == AV_PIX_FMT_BGR444LE ?
|
dstFormat == AV_PIX_FMT_BGR444BE || dstFormat == AV_PIX_FMT_BGR444LE ?
|
||||||
"dithered " : "",
|
"dithered " : "",
|
||||||
#else
|
|
||||||
"",
|
|
||||||
#endif
|
|
||||||
av_get_pix_fmt_name(dstFormat));
|
av_get_pix_fmt_name(dstFormat));
|
||||||
|
|
||||||
if (INLINE_MMXEXT(cpu_flags))
|
if (INLINE_MMXEXT(cpu_flags))
|
||||||
|
@ -40,8 +40,6 @@ const DECLARE_ALIGNED(8, uint64_t, ff_dither8)[2] = {
|
|||||||
|
|
||||||
#if HAVE_INLINE_ASM
|
#if HAVE_INLINE_ASM
|
||||||
|
|
||||||
#define DITHER1XBPP
|
|
||||||
|
|
||||||
DECLARE_ASM_CONST(8, uint64_t, bF8)= 0xF8F8F8F8F8F8F8F8LL;
|
DECLARE_ASM_CONST(8, uint64_t, bF8)= 0xF8F8F8F8F8F8F8F8LL;
|
||||||
DECLARE_ASM_CONST(8, uint64_t, bFC)= 0xFCFCFCFCFCFCFCFCLL;
|
DECLARE_ASM_CONST(8, uint64_t, bFC)= 0xFCFCFCFCFCFCFCFCLL;
|
||||||
|
|
||||||
|
@ -384,11 +384,9 @@ static void RENAME(yuv2rgb565_X_ar)(SwsContext *c, const int16_t *lumFilter,
|
|||||||
YSCALEYUV2RGBX
|
YSCALEYUV2RGBX
|
||||||
"pxor %%mm7, %%mm7 \n\t"
|
"pxor %%mm7, %%mm7 \n\t"
|
||||||
/* mm2=B, %%mm4=G, %%mm5=R, %%mm7=0 */
|
/* mm2=B, %%mm4=G, %%mm5=R, %%mm7=0 */
|
||||||
#ifdef DITHER1XBPP
|
|
||||||
"paddusb "BLUE_DITHER"(%0), %%mm2\n\t"
|
"paddusb "BLUE_DITHER"(%0), %%mm2\n\t"
|
||||||
"paddusb "GREEN_DITHER"(%0), %%mm4\n\t"
|
"paddusb "GREEN_DITHER"(%0), %%mm4\n\t"
|
||||||
"paddusb "RED_DITHER"(%0), %%mm5\n\t"
|
"paddusb "RED_DITHER"(%0), %%mm5\n\t"
|
||||||
#endif
|
|
||||||
WRITERGB16(%4, "%5", %%FF_REGa)
|
WRITERGB16(%4, "%5", %%FF_REGa)
|
||||||
YSCALEYUV2PACKEDX_END
|
YSCALEYUV2PACKEDX_END
|
||||||
}
|
}
|
||||||
@ -408,11 +406,9 @@ static void RENAME(yuv2rgb565_X)(SwsContext *c, const int16_t *lumFilter,
|
|||||||
YSCALEYUV2RGBX
|
YSCALEYUV2RGBX
|
||||||
"pxor %%mm7, %%mm7 \n\t"
|
"pxor %%mm7, %%mm7 \n\t"
|
||||||
/* mm2=B, %%mm4=G, %%mm5=R, %%mm7=0 */
|
/* mm2=B, %%mm4=G, %%mm5=R, %%mm7=0 */
|
||||||
#ifdef DITHER1XBPP
|
|
||||||
"paddusb "BLUE_DITHER"(%0), %%mm2 \n\t"
|
"paddusb "BLUE_DITHER"(%0), %%mm2 \n\t"
|
||||||
"paddusb "GREEN_DITHER"(%0), %%mm4 \n\t"
|
"paddusb "GREEN_DITHER"(%0), %%mm4 \n\t"
|
||||||
"paddusb "RED_DITHER"(%0), %%mm5 \n\t"
|
"paddusb "RED_DITHER"(%0), %%mm5 \n\t"
|
||||||
#endif
|
|
||||||
WRITERGB16(%4, "%5", %%FF_REGa)
|
WRITERGB16(%4, "%5", %%FF_REGa)
|
||||||
YSCALEYUV2PACKEDX_END
|
YSCALEYUV2PACKEDX_END
|
||||||
}
|
}
|
||||||
@ -461,11 +457,9 @@ static void RENAME(yuv2rgb555_X_ar)(SwsContext *c, const int16_t *lumFilter,
|
|||||||
YSCALEYUV2RGBX
|
YSCALEYUV2RGBX
|
||||||
"pxor %%mm7, %%mm7 \n\t"
|
"pxor %%mm7, %%mm7 \n\t"
|
||||||
/* mm2=B, %%mm4=G, %%mm5=R, %%mm7=0 */
|
/* mm2=B, %%mm4=G, %%mm5=R, %%mm7=0 */
|
||||||
#ifdef DITHER1XBPP
|
|
||||||
"paddusb "BLUE_DITHER"(%0), %%mm2\n\t"
|
"paddusb "BLUE_DITHER"(%0), %%mm2\n\t"
|
||||||
"paddusb "GREEN_DITHER"(%0), %%mm4\n\t"
|
"paddusb "GREEN_DITHER"(%0), %%mm4\n\t"
|
||||||
"paddusb "RED_DITHER"(%0), %%mm5\n\t"
|
"paddusb "RED_DITHER"(%0), %%mm5\n\t"
|
||||||
#endif
|
|
||||||
WRITERGB15(%4, "%5", %%FF_REGa)
|
WRITERGB15(%4, "%5", %%FF_REGa)
|
||||||
YSCALEYUV2PACKEDX_END
|
YSCALEYUV2PACKEDX_END
|
||||||
}
|
}
|
||||||
@ -485,11 +479,9 @@ static void RENAME(yuv2rgb555_X)(SwsContext *c, const int16_t *lumFilter,
|
|||||||
YSCALEYUV2RGBX
|
YSCALEYUV2RGBX
|
||||||
"pxor %%mm7, %%mm7 \n\t"
|
"pxor %%mm7, %%mm7 \n\t"
|
||||||
/* mm2=B, %%mm4=G, %%mm5=R, %%mm7=0 */
|
/* mm2=B, %%mm4=G, %%mm5=R, %%mm7=0 */
|
||||||
#ifdef DITHER1XBPP
|
|
||||||
"paddusb "BLUE_DITHER"(%0), %%mm2 \n\t"
|
"paddusb "BLUE_DITHER"(%0), %%mm2 \n\t"
|
||||||
"paddusb "GREEN_DITHER"(%0), %%mm4 \n\t"
|
"paddusb "GREEN_DITHER"(%0), %%mm4 \n\t"
|
||||||
"paddusb "RED_DITHER"(%0), %%mm5 \n\t"
|
"paddusb "RED_DITHER"(%0), %%mm5 \n\t"
|
||||||
#endif
|
|
||||||
WRITERGB15(%4, "%5", %%FF_REGa)
|
WRITERGB15(%4, "%5", %%FF_REGa)
|
||||||
YSCALEYUV2PACKEDX_END
|
YSCALEYUV2PACKEDX_END
|
||||||
}
|
}
|
||||||
@ -891,11 +883,9 @@ static void RENAME(yuv2rgb555_2)(SwsContext *c, const int16_t *buf[2],
|
|||||||
YSCALEYUV2RGB(%%FF_REGBP, %5)
|
YSCALEYUV2RGB(%%FF_REGBP, %5)
|
||||||
"pxor %%mm7, %%mm7 \n\t"
|
"pxor %%mm7, %%mm7 \n\t"
|
||||||
/* mm2=B, %%mm4=G, %%mm5=R, %%mm7=0 */
|
/* mm2=B, %%mm4=G, %%mm5=R, %%mm7=0 */
|
||||||
#ifdef DITHER1XBPP
|
|
||||||
"paddusb "BLUE_DITHER"(%5), %%mm2 \n\t"
|
"paddusb "BLUE_DITHER"(%5), %%mm2 \n\t"
|
||||||
"paddusb "GREEN_DITHER"(%5), %%mm4 \n\t"
|
"paddusb "GREEN_DITHER"(%5), %%mm4 \n\t"
|
||||||
"paddusb "RED_DITHER"(%5), %%mm5 \n\t"
|
"paddusb "RED_DITHER"(%5), %%mm5 \n\t"
|
||||||
#endif
|
|
||||||
WRITERGB15(%%FF_REGb, DSTW_OFFSET"(%5)", %%FF_REGBP)
|
WRITERGB15(%%FF_REGb, DSTW_OFFSET"(%5)", %%FF_REGBP)
|
||||||
"pop %%"FF_REG_BP" \n\t"
|
"pop %%"FF_REG_BP" \n\t"
|
||||||
"mov "ESP_OFFSET"(%5), %%"FF_REG_b" \n\t"
|
"mov "ESP_OFFSET"(%5), %%"FF_REG_b" \n\t"
|
||||||
@ -920,11 +910,9 @@ static void RENAME(yuv2rgb565_2)(SwsContext *c, const int16_t *buf[2],
|
|||||||
YSCALEYUV2RGB(%%FF_REGBP, %5)
|
YSCALEYUV2RGB(%%FF_REGBP, %5)
|
||||||
"pxor %%mm7, %%mm7 \n\t"
|
"pxor %%mm7, %%mm7 \n\t"
|
||||||
/* mm2=B, %%mm4=G, %%mm5=R, %%mm7=0 */
|
/* mm2=B, %%mm4=G, %%mm5=R, %%mm7=0 */
|
||||||
#ifdef DITHER1XBPP
|
|
||||||
"paddusb "BLUE_DITHER"(%5), %%mm2 \n\t"
|
"paddusb "BLUE_DITHER"(%5), %%mm2 \n\t"
|
||||||
"paddusb "GREEN_DITHER"(%5), %%mm4 \n\t"
|
"paddusb "GREEN_DITHER"(%5), %%mm4 \n\t"
|
||||||
"paddusb "RED_DITHER"(%5), %%mm5 \n\t"
|
"paddusb "RED_DITHER"(%5), %%mm5 \n\t"
|
||||||
#endif
|
|
||||||
WRITERGB16(%%FF_REGb, DSTW_OFFSET"(%5)", %%FF_REGBP)
|
WRITERGB16(%%FF_REGb, DSTW_OFFSET"(%5)", %%FF_REGBP)
|
||||||
"pop %%"FF_REG_BP" \n\t"
|
"pop %%"FF_REG_BP" \n\t"
|
||||||
"mov "ESP_OFFSET"(%5), %%"FF_REG_b" \n\t"
|
"mov "ESP_OFFSET"(%5), %%"FF_REG_b" \n\t"
|
||||||
@ -1240,11 +1228,9 @@ static void RENAME(yuv2rgb555_1)(SwsContext *c, const int16_t *buf0,
|
|||||||
YSCALEYUV2RGB1(%%FF_REGBP, %5)
|
YSCALEYUV2RGB1(%%FF_REGBP, %5)
|
||||||
"pxor %%mm7, %%mm7 \n\t"
|
"pxor %%mm7, %%mm7 \n\t"
|
||||||
/* mm2=B, %%mm4=G, %%mm5=R, %%mm7=0 */
|
/* mm2=B, %%mm4=G, %%mm5=R, %%mm7=0 */
|
||||||
#ifdef DITHER1XBPP
|
|
||||||
"paddusb "BLUE_DITHER"(%5), %%mm2 \n\t"
|
"paddusb "BLUE_DITHER"(%5), %%mm2 \n\t"
|
||||||
"paddusb "GREEN_DITHER"(%5), %%mm4 \n\t"
|
"paddusb "GREEN_DITHER"(%5), %%mm4 \n\t"
|
||||||
"paddusb "RED_DITHER"(%5), %%mm5 \n\t"
|
"paddusb "RED_DITHER"(%5), %%mm5 \n\t"
|
||||||
#endif
|
|
||||||
WRITERGB15(%%FF_REGb, DSTW_OFFSET"(%5)", %%FF_REGBP)
|
WRITERGB15(%%FF_REGb, DSTW_OFFSET"(%5)", %%FF_REGBP)
|
||||||
"pop %%"FF_REG_BP" \n\t"
|
"pop %%"FF_REG_BP" \n\t"
|
||||||
"mov "ESP_OFFSET"(%5), %%"FF_REG_b" \n\t"
|
"mov "ESP_OFFSET"(%5), %%"FF_REG_b" \n\t"
|
||||||
@ -1261,11 +1247,9 @@ static void RENAME(yuv2rgb555_1)(SwsContext *c, const int16_t *buf0,
|
|||||||
YSCALEYUV2RGB1b(%%FF_REGBP, %5)
|
YSCALEYUV2RGB1b(%%FF_REGBP, %5)
|
||||||
"pxor %%mm7, %%mm7 \n\t"
|
"pxor %%mm7, %%mm7 \n\t"
|
||||||
/* mm2=B, %%mm4=G, %%mm5=R, %%mm7=0 */
|
/* mm2=B, %%mm4=G, %%mm5=R, %%mm7=0 */
|
||||||
#ifdef DITHER1XBPP
|
|
||||||
"paddusb "BLUE_DITHER"(%5), %%mm2 \n\t"
|
"paddusb "BLUE_DITHER"(%5), %%mm2 \n\t"
|
||||||
"paddusb "GREEN_DITHER"(%5), %%mm4 \n\t"
|
"paddusb "GREEN_DITHER"(%5), %%mm4 \n\t"
|
||||||
"paddusb "RED_DITHER"(%5), %%mm5 \n\t"
|
"paddusb "RED_DITHER"(%5), %%mm5 \n\t"
|
||||||
#endif
|
|
||||||
WRITERGB15(%%FF_REGb, DSTW_OFFSET"(%5)", %%FF_REGBP)
|
WRITERGB15(%%FF_REGb, DSTW_OFFSET"(%5)", %%FF_REGBP)
|
||||||
"pop %%"FF_REG_BP" \n\t"
|
"pop %%"FF_REG_BP" \n\t"
|
||||||
"mov "ESP_OFFSET"(%5), %%"FF_REG_b" \n\t"
|
"mov "ESP_OFFSET"(%5), %%"FF_REG_b" \n\t"
|
||||||
@ -1293,11 +1277,9 @@ static void RENAME(yuv2rgb565_1)(SwsContext *c, const int16_t *buf0,
|
|||||||
YSCALEYUV2RGB1(%%FF_REGBP, %5)
|
YSCALEYUV2RGB1(%%FF_REGBP, %5)
|
||||||
"pxor %%mm7, %%mm7 \n\t"
|
"pxor %%mm7, %%mm7 \n\t"
|
||||||
/* mm2=B, %%mm4=G, %%mm5=R, %%mm7=0 */
|
/* mm2=B, %%mm4=G, %%mm5=R, %%mm7=0 */
|
||||||
#ifdef DITHER1XBPP
|
|
||||||
"paddusb "BLUE_DITHER"(%5), %%mm2 \n\t"
|
"paddusb "BLUE_DITHER"(%5), %%mm2 \n\t"
|
||||||
"paddusb "GREEN_DITHER"(%5), %%mm4 \n\t"
|
"paddusb "GREEN_DITHER"(%5), %%mm4 \n\t"
|
||||||
"paddusb "RED_DITHER"(%5), %%mm5 \n\t"
|
"paddusb "RED_DITHER"(%5), %%mm5 \n\t"
|
||||||
#endif
|
|
||||||
WRITERGB16(%%FF_REGb, DSTW_OFFSET"(%5)", %%FF_REGBP)
|
WRITERGB16(%%FF_REGb, DSTW_OFFSET"(%5)", %%FF_REGBP)
|
||||||
"pop %%"FF_REG_BP" \n\t"
|
"pop %%"FF_REG_BP" \n\t"
|
||||||
"mov "ESP_OFFSET"(%5), %%"FF_REG_b" \n\t"
|
"mov "ESP_OFFSET"(%5), %%"FF_REG_b" \n\t"
|
||||||
@ -1314,11 +1296,9 @@ static void RENAME(yuv2rgb565_1)(SwsContext *c, const int16_t *buf0,
|
|||||||
YSCALEYUV2RGB1b(%%FF_REGBP, %5)
|
YSCALEYUV2RGB1b(%%FF_REGBP, %5)
|
||||||
"pxor %%mm7, %%mm7 \n\t"
|
"pxor %%mm7, %%mm7 \n\t"
|
||||||
/* mm2=B, %%mm4=G, %%mm5=R, %%mm7=0 */
|
/* mm2=B, %%mm4=G, %%mm5=R, %%mm7=0 */
|
||||||
#ifdef DITHER1XBPP
|
|
||||||
"paddusb "BLUE_DITHER"(%5), %%mm2 \n\t"
|
"paddusb "BLUE_DITHER"(%5), %%mm2 \n\t"
|
||||||
"paddusb "GREEN_DITHER"(%5), %%mm4 \n\t"
|
"paddusb "GREEN_DITHER"(%5), %%mm4 \n\t"
|
||||||
"paddusb "RED_DITHER"(%5), %%mm5 \n\t"
|
"paddusb "RED_DITHER"(%5), %%mm5 \n\t"
|
||||||
#endif
|
|
||||||
WRITERGB16(%%FF_REGb, DSTW_OFFSET"(%5)", %%FF_REGBP)
|
WRITERGB16(%%FF_REGb, DSTW_OFFSET"(%5)", %%FF_REGBP)
|
||||||
"pop %%"FF_REG_BP" \n\t"
|
"pop %%"FF_REG_BP" \n\t"
|
||||||
"mov "ESP_OFFSET"(%5), %%"FF_REG_b" \n\t"
|
"mov "ESP_OFFSET"(%5), %%"FF_REG_b" \n\t"
|
||||||
|
@ -39,8 +39,6 @@
|
|||||||
|
|
||||||
#if HAVE_X86ASM
|
#if HAVE_X86ASM
|
||||||
|
|
||||||
#define DITHER1XBPP // only for MMX
|
|
||||||
|
|
||||||
//SSSE3 versions
|
//SSSE3 versions
|
||||||
#undef RENAME
|
#undef RENAME
|
||||||
#define RENAME(a) a ## _ssse3
|
#define RENAME(a) a ## _ssse3
|
||||||
|
@ -75,11 +75,9 @@ static inline int RENAME(yuv420_rgb15)(SwsContext *c, const uint8_t *src[],
|
|||||||
|
|
||||||
YUV2RGB_LOOP(2)
|
YUV2RGB_LOOP(2)
|
||||||
|
|
||||||
#ifdef DITHER1XBPP
|
|
||||||
c->blueDither = ff_dither8[y & 1];
|
c->blueDither = ff_dither8[y & 1];
|
||||||
c->greenDither = ff_dither8[y & 1];
|
c->greenDither = ff_dither8[y & 1];
|
||||||
c->redDither = ff_dither8[(y + 1) & 1];
|
c->redDither = ff_dither8[(y + 1) & 1];
|
||||||
#endif
|
|
||||||
|
|
||||||
RENAME(ff_yuv_420_rgb15)(index, image, pu - index, pv - index, &(c->redDither), py - 2 * index);
|
RENAME(ff_yuv_420_rgb15)(index, image, pu - index, pv - index, &(c->redDither), py - 2 * index);
|
||||||
}
|
}
|
||||||
@ -95,11 +93,9 @@ static inline int RENAME(yuv420_rgb16)(SwsContext *c, const uint8_t *src[],
|
|||||||
|
|
||||||
YUV2RGB_LOOP(2)
|
YUV2RGB_LOOP(2)
|
||||||
|
|
||||||
#ifdef DITHER1XBPP
|
|
||||||
c->blueDither = ff_dither8[y & 1];
|
c->blueDither = ff_dither8[y & 1];
|
||||||
c->greenDither = ff_dither4[y & 1];
|
c->greenDither = ff_dither4[y & 1];
|
||||||
c->redDither = ff_dither8[(y + 1) & 1];
|
c->redDither = ff_dither8[(y + 1) & 1];
|
||||||
#endif
|
|
||||||
|
|
||||||
RENAME(ff_yuv_420_rgb16)(index, image, pu - index, pv - index, &(c->redDither), py - 2 * index);
|
RENAME(ff_yuv_420_rgb16)(index, image, pu - index, pv - index, &(c->redDither), py - 2 * index);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user