annotate vidix/fourcc.h @ 30251:fbb33d643fe6

Remove hackish and not actually working code to make vidix compile with compilers without inline assembly. Almost no OS provides inb() etc. in its libraries, and removing the broken fallback code makes it compile on Solaris with Sun C compiler.
author reimar
date Tue, 12 Jan 2010 20:20:49 +0000
parents 1861074aef60
children 28ea3e45b03a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
1 /*
23046
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 3991
diff changeset
2 * VIDIX FourCC.
26718
051b2632f121 consistency cosmetics: Move some parts of file headers around; typo fixes.
diego
parents: 26030
diff changeset
3 *
051b2632f121 consistency cosmetics: Move some parts of file headers around; typo fixes.
diego
parents: 26030
diff changeset
4 * This interface is based on v4l2, fbvid.h, mga_vid.h projects
051b2632f121 consistency cosmetics: Move some parts of file headers around; typo fixes.
diego
parents: 26030
diff changeset
5 * and personally my ideas.
051b2632f121 consistency cosmetics: Move some parts of file headers around; typo fixes.
diego
parents: 26030
diff changeset
6 *
23046
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 3991
diff changeset
7 * Copyright (C) 2002 Nick Kurshev
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 3991
diff changeset
8 *
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 3991
diff changeset
9 * This file is part of MPlayer.
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 3991
diff changeset
10 *
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 3991
diff changeset
11 * MPlayer is free software; you can redistribute it and/or modify
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 3991
diff changeset
12 * it under the terms of the GNU General Public License as published by
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 3991
diff changeset
13 * the Free Software Foundation; either version 2 of the License, or
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 3991
diff changeset
14 * (at your option) any later version.
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 3991
diff changeset
15 *
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 3991
diff changeset
16 * MPlayer is distributed in the hope that it will be useful,
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 3991
diff changeset
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 3991
diff changeset
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 3991
diff changeset
19 * GNU General Public License for more details.
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 3991
diff changeset
20 *
26719
3abd1629658b Use standard license headers.
diego
parents: 26718
diff changeset
21 * You should have received a copy of the GNU General Public License along
3abd1629658b Use standard license headers.
diego
parents: 26718
diff changeset
22 * with MPlayer; if not, write to the Free Software Foundation, Inc.,
3abd1629658b Use standard license headers.
diego
parents: 26718
diff changeset
23 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
23046
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 3991
diff changeset
24 */
82216ef041e0 updated vidix files headers whenever it's possible to have a clear GPL statement
ben
parents: 3991
diff changeset
25
26030
a93e46adb54c Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25535
diff changeset
26 #ifndef MPLAYER_FOURCC_H
a93e46adb54c Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25535
diff changeset
27 #define MPLAYER_FOURCC_H
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
28
dcc632dd2097 preliminary version
nick
parents:
diff changeset
29 /* Four-character-code (FOURCC) */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
30 #define vid_fourcc(a,b,c,d)\
dcc632dd2097 preliminary version
nick
parents:
diff changeset
31 (((unsigned)(a)<<0)|((unsigned)(b)<<8)|((unsigned)(c)<<16)|((unsigned)(d)<<24))
dcc632dd2097 preliminary version
nick
parents:
diff changeset
32
dcc632dd2097 preliminary version
nick
parents:
diff changeset
33 /* RGB fourcc */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
34 #define IMGFMT_RGB332 vid_fourcc('R','G','B','1') /* 8 RGB-3-3-2 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
35 #define IMGFMT_RGB555 vid_fourcc('R','G','B','O') /* 16 RGB-5-5-5 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
36 #define IMGFMT_RGB565 vid_fourcc('R','G','B','P') /* 16 RGB-5-6-5 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
37 #define IMGFMT_RGB555X vid_fourcc('R','G','B','Q') /* 16 RGB-5-5-5 BE */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
38 #define IMGFMT_RGB565X vid_fourcc('R','G','B','R') /* 16 RGB-5-6-5 BE */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
39 #define IMGFMT_BGR15 vid_fourcc('B','G','R',15) /* 15 BGR-5-5-5 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
40 #define IMGFMT_RGB15 vid_fourcc('R','G','B',15) /* 15 RGB-5-5-5 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
41 #define IMGFMT_BGR16 vid_fourcc('B','G','R',16) /* 32 BGR-5-6-5 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
42 #define IMGFMT_RGB16 vid_fourcc('R','G','B',16) /* 32 RGB-5-6-5 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
43 #define IMGFMT_BGR24 vid_fourcc('B','G','R',24) /* 24 BGR-8-8-8 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
44 #define IMGFMT_RGB24 vid_fourcc('R','G','B',24) /* 24 RGB-8-8-8 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
45 #define IMGFMT_BGR32 vid_fourcc('B','G','R',32) /* 32 BGR-8-8-8-8 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
46 #define IMGFMT_RGB32 vid_fourcc('R','G','B',32) /* 32 RGB-8-8-8-8 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
47
dcc632dd2097 preliminary version
nick
parents:
diff changeset
48 /* Planar YUV Formats */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
49 #define IMGFMT_YVU9 vid_fourcc('Y','V','U','9') /* 9 YVU 4:1:0 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
50 #define IMGFMT_IF09 vid_fourcc('I','F','0','9') /* 9.5 YUV 4:1:0 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
51 #define IMGFMT_YV12 vid_fourcc('Y','V','1','2') /* 12 YVU 4:2:0 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
52 #define IMGFMT_I420 vid_fourcc('I','4','2','0') /* 12 YUV 4:2:0 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
53 #define IMGFMT_IYUV vid_fourcc('I','Y','U','V') /* 12 YUV 4:2:0 */
27398
1861074aef60 Add NV12 colorspace support to VIDIX driver.
ben
parents: 26719
diff changeset
54 #define IMGFMT_NV12 vid_fourcc('N','V','1','2')
3991
dcc632dd2097 preliminary version
nick
parents:
diff changeset
55 #define IMGFMT_CLPL vid_fourcc('C','L','P','L') /* 12 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
56 #define IMGFMT_Y800 vid_fourcc('Y','8','0','0') /* 8 Y Grayscale */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
57 #define IMGFMT_Y8 vid_fourcc('Y','8',' ',' ') /* 8 Y Grayscale */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
58
dcc632dd2097 preliminary version
nick
parents:
diff changeset
59 /* Packed YUV Formats */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
60 #define IMGFMT_IUYV vid_fourcc('I','U','Y','V') /* 16 line order {0,2,4,...1,3,5} */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
61 #define IMGFMT_IY41 vid_fourcc('I','Y','4','1') /* 12 line order {0,2,4,...1,3,5} */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
62 #define IMGFMT_IYU1 vid_fourcc('I','Y','U','1') /* 12 IEEE 1394 Digital Camera */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
63 #define IMGFMT_IYU2 vid_fourcc('I','Y','U','2') /* 24 IEEE 1394 Digital Camera */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
64 #define IMGFMT_UYVY vid_fourcc('U','Y','V','Y') /* 16 UYVY 4:2:2 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
65 #define IMGFMT_UYNV vid_fourcc('U','Y','N','V') /* 16 UYVY 4:2:2 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
66 #define IMGFMT_cyuv vid_fourcc('c','y','u','v') /* 16 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
67 #define IMGFMT_Y422 vid_fourcc('Y','4','2','2') /* 16 UYVY 4:2:2 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
68 #define IMGFMT_YUY2 vid_fourcc('Y','U','Y','2') /* 16 YUYV 4:2:2 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
69 #define IMGFMT_YUNV vid_fourcc('Y','U','N','V') /* 16 YUYV 4:2:2 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
70 #define IMGFMT_YVYU vid_fourcc('Y','V','Y','U') /* 16 YVYU 4:2:2 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
71 #define IMGFMT_Y41P vid_fourcc('Y','4','1','P') /* 12 YUV 4:1:1 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
72 #define IMGFMT_Y211 vid_fourcc('Y','2','1','1') /* 8.5 YUV 2:1:1 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
73 #define IMGFMT_Y41T vid_fourcc('Y','4','1','T') /* 12 YUV 4:1:1 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
74 #define IMGFMT_Y42T vid_fourcc('Y','4','2','T') /* 16 UYVU 4:2:2 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
75 #define IMGFMT_V422 vid_fourcc('V','4','2','2') /* 16 YUY2 4:2:2 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
76 #define IMGFMT_V655 vid_fourcc('V','6','5','5') /* 16 YUV 4:2:2 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
77 #define IMGFMT_CLJR vid_fourcc('C','L','J','R') /* 7.9 YUV 4:1:1 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
78 #define IMGFMT_YUVP vid_fourcc('Y','U','V','P') /* 24 Y0U0Y1V0 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
79 #define IMGFMT_UYVP vid_fourcc('U','Y','V','P') /* 24 U0Y0V0Y1 */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
80
dcc632dd2097 preliminary version
nick
parents:
diff changeset
81 /* Vendor-specific formats */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
82 #define IMGFMT_WNVA vid_fourcc('W','N','V','A') /* Winnov hw compress */
dcc632dd2097 preliminary version
nick
parents:
diff changeset
83
26030
a93e46adb54c Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25535
diff changeset
84 #endif /* MPLAYER_FOURCC_H */