2007-08-25 15:18:29 +02:00
|
|
|
#ifndef FMT_CONVERSION_H
|
|
|
|
#define FMT_CONVERSION_H
|
|
|
|
|
2006-12-31 03:44:54 +01:00
|
|
|
#ifdef USE_LIBAVUTIL_SO
|
|
|
|
#include <ffmpeg/avutil.h>
|
|
|
|
#else
|
2006-09-17 17:15:13 +02:00
|
|
|
#include "avutil.h"
|
2006-12-31 03:44:54 +01:00
|
|
|
#endif
|
2006-09-17 17:15:13 +02:00
|
|
|
#include "img_format.h"
|
|
|
|
|
|
|
|
enum PixelFormat imgfmt2pixfmt(int fmt)
|
|
|
|
{
|
|
|
|
switch (fmt) {
|
|
|
|
case IMGFMT_BGR32:
|
|
|
|
return PIX_FMT_RGB32;
|
|
|
|
case IMGFMT_BGR24:
|
|
|
|
return PIX_FMT_BGR24;
|
|
|
|
case IMGFMT_BGR16:
|
|
|
|
return PIX_FMT_BGR565;
|
|
|
|
case IMGFMT_BGR15:
|
|
|
|
return PIX_FMT_BGR555;
|
|
|
|
case IMGFMT_BGR8:
|
|
|
|
return PIX_FMT_BGR8;
|
|
|
|
case IMGFMT_BGR4:
|
|
|
|
return PIX_FMT_BGR4;
|
|
|
|
case IMGFMT_BGR1:
|
|
|
|
case IMGFMT_RGB1:
|
|
|
|
return PIX_FMT_MONOBLACK;
|
|
|
|
case IMGFMT_RG4B:
|
|
|
|
return PIX_FMT_RGB4_BYTE;
|
|
|
|
case IMGFMT_BG4B:
|
|
|
|
return PIX_FMT_BGR4_BYTE;
|
|
|
|
case IMGFMT_RGB32:
|
|
|
|
return PIX_FMT_BGR32;
|
|
|
|
case IMGFMT_RGB24:
|
|
|
|
return PIX_FMT_RGB24;
|
|
|
|
case IMGFMT_RGB16:
|
|
|
|
return PIX_FMT_RGB565;
|
|
|
|
case IMGFMT_RGB15:
|
|
|
|
return PIX_FMT_RGB555;
|
|
|
|
case IMGFMT_RGB8:
|
|
|
|
return PIX_FMT_RGB8;
|
|
|
|
case IMGFMT_RGB4:
|
|
|
|
return PIX_FMT_RGB4;
|
|
|
|
case IMGFMT_YUY2:
|
|
|
|
return PIX_FMT_YUYV422;
|
|
|
|
case IMGFMT_UYVY:
|
|
|
|
return PIX_FMT_UYVY422;
|
|
|
|
case IMGFMT_NV12:
|
|
|
|
return PIX_FMT_NV12;
|
|
|
|
case IMGFMT_NV21:
|
|
|
|
return PIX_FMT_NV21;
|
|
|
|
case IMGFMT_Y800:
|
2006-09-21 16:26:08 +02:00
|
|
|
case IMGFMT_Y8:
|
2006-09-17 17:15:13 +02:00
|
|
|
return PIX_FMT_GRAY8;
|
|
|
|
case IMGFMT_IF09:
|
|
|
|
case IMGFMT_YVU9:
|
|
|
|
return PIX_FMT_YUV410P;
|
2006-09-22 20:18:56 +02:00
|
|
|
case IMGFMT_I420:
|
2007-09-12 19:59:31 +02:00
|
|
|
case IMGFMT_IYUV:
|
2006-09-17 17:15:13 +02:00
|
|
|
case IMGFMT_YV12:
|
|
|
|
return PIX_FMT_YUV420P;
|
|
|
|
case IMGFMT_411P:
|
|
|
|
return PIX_FMT_YUV411P;
|
|
|
|
case IMGFMT_422P:
|
|
|
|
return PIX_FMT_YUV422P;
|
|
|
|
case IMGFMT_444P:
|
|
|
|
return PIX_FMT_YUV444P;
|
|
|
|
default:
|
|
|
|
fprintf(stderr, "Unsupported format %s\n", vo_format_name(fmt));
|
|
|
|
}
|
|
|
|
|
|
|
|
return PIX_FMT_NONE;
|
|
|
|
}
|
2007-08-25 15:18:29 +02:00
|
|
|
|
|
|
|
#endif /* FMT_CONVERSION_H */
|