|
|
|
@ -102,22 +102,54 @@ untested special converters |
|
|
|
|
#define PI 3.14159265358979323846 |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
#define isSupportedIn(x) ((x)==PIX_FMT_YUV420P || (x)==PIX_FMT_YUYV422 || (x)==PIX_FMT_UYVY422 \ |
|
|
|
|
|| (x)==PIX_FMT_RGB32 || (x)==PIX_FMT_BGR24 || (x)==PIX_FMT_BGR565 || (x)==PIX_FMT_BGR555 \
|
|
|
|
|
|| (x)==PIX_FMT_BGR32 || (x)==PIX_FMT_RGB24 || (x)==PIX_FMT_RGB565 || (x)==PIX_FMT_RGB555 \
|
|
|
|
|
|| (x)==PIX_FMT_GRAY8 || (x)==PIX_FMT_YUV410P \
|
|
|
|
|
|| (x)==PIX_FMT_GRAY16BE || (x)==PIX_FMT_GRAY16LE \
|
|
|
|
|
|| (x)==PIX_FMT_YUV444P || (x)==PIX_FMT_YUV422P || (x)==PIX_FMT_YUV411P \
|
|
|
|
|
|| (x)==PIX_FMT_PAL8 || (x)==PIX_FMT_BGR8 || (x)==PIX_FMT_RGB8 \
|
|
|
|
|
|| (x)==PIX_FMT_BGR4_BYTE || (x)==PIX_FMT_RGB4_BYTE) |
|
|
|
|
#define isSupportedOut(x) ((x)==PIX_FMT_YUV420P || (x)==PIX_FMT_YUYV422 || (x)==PIX_FMT_UYVY422 \ |
|
|
|
|
|| (x)==PIX_FMT_YUV444P || (x)==PIX_FMT_YUV422P || (x)==PIX_FMT_YUV411P \
|
|
|
|
|
|| isRGB(x) || isBGR(x) \
|
|
|
|
|
|| (x)==PIX_FMT_NV12 || (x)==PIX_FMT_NV21 \
|
|
|
|
|
|| (x)==PIX_FMT_GRAY16BE || (x)==PIX_FMT_GRAY16LE \
|
|
|
|
|
|| (x)==PIX_FMT_GRAY8 || (x)==PIX_FMT_YUV410P) |
|
|
|
|
#define isPacked(x) ((x)==PIX_FMT_PAL8 || (x)==PIX_FMT_YUYV422 || \ |
|
|
|
|
(x)==PIX_FMT_UYVY422 || isRGB(x) || isBGR(x)) |
|
|
|
|
#define isSupportedIn(x) ( \ |
|
|
|
|
(x)==PIX_FMT_YUV420P \
|
|
|
|
|
|| (x)==PIX_FMT_YUYV422 \
|
|
|
|
|
|| (x)==PIX_FMT_UYVY422 \
|
|
|
|
|
|| (x)==PIX_FMT_RGB32 \
|
|
|
|
|
|| (x)==PIX_FMT_BGR24 \
|
|
|
|
|
|| (x)==PIX_FMT_BGR565 \
|
|
|
|
|
|| (x)==PIX_FMT_BGR555 \
|
|
|
|
|
|| (x)==PIX_FMT_BGR32 \
|
|
|
|
|
|| (x)==PIX_FMT_RGB24 \
|
|
|
|
|
|| (x)==PIX_FMT_RGB565 \
|
|
|
|
|
|| (x)==PIX_FMT_RGB555 \
|
|
|
|
|
|| (x)==PIX_FMT_GRAY8 \
|
|
|
|
|
|| (x)==PIX_FMT_YUV410P \
|
|
|
|
|
|| (x)==PIX_FMT_GRAY16BE \
|
|
|
|
|
|| (x)==PIX_FMT_GRAY16LE \
|
|
|
|
|
|| (x)==PIX_FMT_YUV444P \
|
|
|
|
|
|| (x)==PIX_FMT_YUV422P \
|
|
|
|
|
|| (x)==PIX_FMT_YUV411P \
|
|
|
|
|
|| (x)==PIX_FMT_PAL8 \
|
|
|
|
|
|| (x)==PIX_FMT_BGR8 \
|
|
|
|
|
|| (x)==PIX_FMT_RGB8 \
|
|
|
|
|
|| (x)==PIX_FMT_BGR4_BYTE \
|
|
|
|
|
|| (x)==PIX_FMT_RGB4_BYTE \
|
|
|
|
|
) |
|
|
|
|
#define isSupportedOut(x) ( \ |
|
|
|
|
(x)==PIX_FMT_YUV420P \
|
|
|
|
|
|| (x)==PIX_FMT_YUYV422 \
|
|
|
|
|
|| (x)==PIX_FMT_UYVY422 \
|
|
|
|
|
|| (x)==PIX_FMT_YUV444P \
|
|
|
|
|
|| (x)==PIX_FMT_YUV422P \
|
|
|
|
|
|| (x)==PIX_FMT_YUV411P \
|
|
|
|
|
|| isRGB(x) \
|
|
|
|
|
|| isBGR(x) \
|
|
|
|
|
|| (x)==PIX_FMT_NV12 \
|
|
|
|
|
|| (x)==PIX_FMT_NV21 \
|
|
|
|
|
|| (x)==PIX_FMT_GRAY16BE \
|
|
|
|
|
|| (x)==PIX_FMT_GRAY16LE \
|
|
|
|
|
|| (x)==PIX_FMT_GRAY8 \
|
|
|
|
|
|| (x)==PIX_FMT_YUV410P \
|
|
|
|
|
) |
|
|
|
|
#define isPacked(x) ( \ |
|
|
|
|
(x)==PIX_FMT_PAL8 \
|
|
|
|
|
|| (x)==PIX_FMT_YUYV422 \
|
|
|
|
|
|| (x)==PIX_FMT_UYVY422 \
|
|
|
|
|
|| isRGB(x) \
|
|
|
|
|
|| isBGR(x) \
|
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
#define RGB2YUV_SHIFT 16 |
|
|
|
|
#define BY ((int)( 0.098*(1<<RGB2YUV_SHIFT)+0.5)) |
|
|
|
|