Merge svn changes up to r28461
[mplayer.git] / fmt-conversion.h
blob13035cdea727e7d59d7b064e6f1583db7cd820b5
1 #ifndef MPLAYER_FMT_CONVERSION_H
2 #define MPLAYER_FMT_CONVERSION_H
4 #include <stdio.h>
5 #include "libavutil/avutil.h"
6 #include "libmpcodecs/img_format.h"
8 enum PixelFormat imgfmt2pixfmt(int fmt)
10 switch (fmt) {
11 case IMGFMT_BGR32:
12 return PIX_FMT_RGB32;
13 case IMGFMT_BGR24:
14 return PIX_FMT_BGR24;
15 case IMGFMT_BGR16:
16 return PIX_FMT_RGB565;
17 case IMGFMT_BGR15:
18 return PIX_FMT_RGB555;
19 case IMGFMT_BGR8:
20 return PIX_FMT_RGB8;
21 case IMGFMT_BGR4:
22 return PIX_FMT_RGB4;
23 case IMGFMT_BGR1:
24 case IMGFMT_RGB1:
25 return PIX_FMT_MONOBLACK;
26 case IMGFMT_RG4B:
27 return PIX_FMT_BGR4_BYTE;
28 case IMGFMT_BG4B:
29 return PIX_FMT_RGB4_BYTE;
30 case IMGFMT_RGB32:
31 return PIX_FMT_BGR32;
32 case IMGFMT_RGB24:
33 return PIX_FMT_RGB24;
34 case IMGFMT_RGB16:
35 return PIX_FMT_BGR565;
36 case IMGFMT_RGB15:
37 return PIX_FMT_BGR555;
38 case IMGFMT_RGB8:
39 return PIX_FMT_BGR8;
40 case IMGFMT_RGB4:
41 return PIX_FMT_BGR4;
42 case IMGFMT_YUY2:
43 return PIX_FMT_YUYV422;
44 case IMGFMT_UYVY:
45 return PIX_FMT_UYVY422;
46 case IMGFMT_NV12:
47 return PIX_FMT_NV12;
48 case IMGFMT_NV21:
49 return PIX_FMT_NV21;
50 case IMGFMT_Y800:
51 case IMGFMT_Y8:
52 return PIX_FMT_GRAY8;
53 case IMGFMT_IF09:
54 case IMGFMT_YVU9:
55 return PIX_FMT_YUV410P;
56 case IMGFMT_I420:
57 case IMGFMT_IYUV:
58 case IMGFMT_YV12:
59 return PIX_FMT_YUV420P;
60 case IMGFMT_411P:
61 return PIX_FMT_YUV411P;
62 case IMGFMT_422P:
63 return PIX_FMT_YUV422P;
64 case IMGFMT_444P:
65 return PIX_FMT_YUV444P;
66 default:
67 fprintf(stderr, "Unsupported format %s\n", vo_format_name(fmt));
70 return PIX_FMT_NONE;
73 #endif /* MPLAYER_FMT_CONVERSION_H */