Imported Upstream version 1.15.1
[deb_xorg-server.git] / hw / xfree86 / common / fourcc.h
CommitLineData
a09e091a
JB
1
2/*
3 * Copyright (c) 2000-2003 by The XFree86 Project, Inc.
4 *
5 * Permission is hereby granted, free of charge, to any person obtaining a
6 * copy of this software and associated documentation files (the "Software"),
7 * to deal in the Software without restriction, including without limitation
8 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
9 * and/or sell copies of the Software, and to permit persons to whom the
10 * Software is furnished to do so, subject to the following conditions:
11 *
12 * The above copyright notice and this permission notice shall be included in
13 * all copies or substantial portions of the Software.
14 *
15 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
18 * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR
19 * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
20 * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
21 * OTHER DEALINGS IN THE SOFTWARE.
22 *
23 * Except as contained in this notice, the name of the copyright holder(s)
24 * and author(s) shall not be used in advertising or otherwise to promote
25 * the sale, use or other dealings in this Software without prior written
26 * authorization from the copyright holder(s) and author(s).
27 */
28
29/*
30 This header file contains listings of STANDARD guids for video formats.
31 Please do not place non-registered, or incomplete entries in this file.
32 A list of some popular fourcc's are at: http://www.webartz.com/fourcc/
33 For an explanation of fourcc <-> guid mappings see RFC2361.
34*/
35
36#ifndef _XF86_FOURCC_H_
37#define _XF86_FOURCC_H_ 1
38
39#define FOURCC_YUY2 0x32595559
40#define XVIMAGE_YUY2 \
41 { \
42 FOURCC_YUY2, \
43 XvYUV, \
44 LSBFirst, \
45 {'Y','U','Y','2', \
46 0x00,0x00,0x00,0x10,0x80,0x00,0x00,0xAA,0x00,0x38,0x9B,0x71}, \
47 16, \
48 XvPacked, \
49 1, \
50 0, 0, 0, 0, \
51 8, 8, 8, \
52 1, 2, 2, \
53 1, 1, 1, \
54 {'Y','U','Y','V', \
55 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, \
56 XvTopToBottom \
57 }
58
59#define FOURCC_YV12 0x32315659
60#define XVIMAGE_YV12 \
61 { \
62 FOURCC_YV12, \
63 XvYUV, \
64 LSBFirst, \
65 {'Y','V','1','2', \
66 0x00,0x00,0x00,0x10,0x80,0x00,0x00,0xAA,0x00,0x38,0x9B,0x71}, \
67 12, \
68 XvPlanar, \
69 3, \
70 0, 0, 0, 0, \
71 8, 8, 8, \
72 1, 2, 2, \
73 1, 2, 2, \
74 {'Y','V','U', \
75 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, \
76 XvTopToBottom \
77 }
78
79#define FOURCC_I420 0x30323449
80#define XVIMAGE_I420 \
81 { \
82 FOURCC_I420, \
83 XvYUV, \
84 LSBFirst, \
85 {'I','4','2','0', \
86 0x00,0x00,0x00,0x10,0x80,0x00,0x00,0xAA,0x00,0x38,0x9B,0x71}, \
87 12, \
88 XvPlanar, \
89 3, \
90 0, 0, 0, 0, \
91 8, 8, 8, \
92 1, 2, 2, \
93 1, 2, 2, \
94 {'Y','U','V', \
95 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, \
96 XvTopToBottom \
97 }
98
99#define FOURCC_UYVY 0x59565955
100#define XVIMAGE_UYVY \
101 { \
102 FOURCC_UYVY, \
103 XvYUV, \
104 LSBFirst, \
105 {'U','Y','V','Y', \
106 0x00,0x00,0x00,0x10,0x80,0x00,0x00,0xAA,0x00,0x38,0x9B,0x71}, \
107 16, \
108 XvPacked, \
109 1, \
110 0, 0, 0, 0, \
111 8, 8, 8, \
112 1, 2, 2, \
113 1, 1, 1, \
114 {'U','Y','V','Y', \
115 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, \
116 XvTopToBottom \
117 }
118
119#define FOURCC_IA44 0x34344149
120#define XVIMAGE_IA44 \
121 { \
122 FOURCC_IA44, \
123 XvYUV, \
124 LSBFirst, \
125 {'I','A','4','4', \
126 0x00,0x00,0x00,0x10,0x80,0x00,0x00,0xAA,0x00,0x38,0x9B,0x71}, \
127 8, \
128 XvPacked, \
129 1, \
130 0, 0, 0, 0, \
131 8, 8, 8, \
132 1, 1, 1, \
133 1, 1, 1, \
134 {'A','I', \
135 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, \
136 XvTopToBottom \
137 }
138
139#define FOURCC_AI44 0x34344941
140#define XVIMAGE_AI44 \
141 { \
142 FOURCC_AI44, \
143 XvYUV, \
144 LSBFirst, \
145 {'A','I','4','4', \
146 0x00,0x00,0x00,0x10,0x80,0x00,0x00,0xAA,0x00,0x38,0x9B,0x71}, \
147 8, \
148 XvPacked, \
149 1, \
150 0, 0, 0, 0, \
151 8, 8, 8, \
152 1, 1, 1, \
153 1, 1, 1, \
154 {'I','A', \
155 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, \
156 XvTopToBottom \
157 }
158
159#endif /* _XF86_FOURCC_H_ */