e14743d1 |
1 | <HTML |
2 | ><HEAD |
3 | ><TITLE |
4 | >SDL_Overlay</TITLE |
5 | ><META |
6 | NAME="GENERATOR" |
7 | CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+ |
8 | "><LINK |
9 | REL="HOME" |
10 | TITLE="SDL Library Documentation" |
11 | HREF="index.html"><LINK |
12 | REL="UP" |
13 | TITLE="Video" |
14 | HREF="video.html"><LINK |
15 | REL="PREVIOUS" |
16 | TITLE="SDL_VideoInfo" |
17 | HREF="sdlvideoinfo.html"><LINK |
18 | REL="NEXT" |
19 | TITLE="Window Management" |
20 | HREF="wm.html"></HEAD |
21 | ><BODY |
22 | CLASS="REFENTRY" |
23 | BGCOLOR="#FFF8DC" |
24 | TEXT="#000000" |
25 | LINK="#0000ee" |
26 | VLINK="#551a8b" |
27 | ALINK="#ff0000" |
28 | ><DIV |
29 | CLASS="NAVHEADER" |
30 | ><TABLE |
31 | SUMMARY="Header navigation table" |
32 | WIDTH="100%" |
33 | BORDER="0" |
34 | CELLPADDING="0" |
35 | CELLSPACING="0" |
36 | ><TR |
37 | ><TH |
38 | COLSPAN="3" |
39 | ALIGN="center" |
40 | >SDL Library Documentation</TH |
41 | ></TR |
42 | ><TR |
43 | ><TD |
44 | WIDTH="10%" |
45 | ALIGN="left" |
46 | VALIGN="bottom" |
47 | ><A |
48 | HREF="sdlvideoinfo.html" |
49 | ACCESSKEY="P" |
50 | >Prev</A |
51 | ></TD |
52 | ><TD |
53 | WIDTH="80%" |
54 | ALIGN="center" |
55 | VALIGN="bottom" |
56 | ></TD |
57 | ><TD |
58 | WIDTH="10%" |
59 | ALIGN="right" |
60 | VALIGN="bottom" |
61 | ><A |
62 | HREF="wm.html" |
63 | ACCESSKEY="N" |
64 | >Next</A |
65 | ></TD |
66 | ></TR |
67 | ></TABLE |
68 | ><HR |
69 | ALIGN="LEFT" |
70 | WIDTH="100%"></DIV |
71 | ><H1 |
72 | ><A |
73 | NAME="SDLOVERLAY" |
74 | ></A |
75 | >SDL_Overlay</H1 |
76 | ><DIV |
77 | CLASS="REFNAMEDIV" |
78 | ><A |
79 | NAME="AEN3464" |
80 | ></A |
81 | ><H2 |
82 | >Name</H2 |
83 | >SDL_Overlay -- YUV video overlay</DIV |
84 | ><DIV |
85 | CLASS="REFSECT1" |
86 | ><A |
87 | NAME="AEN3467" |
88 | ></A |
89 | ><H2 |
90 | >Structure Definition</H2 |
91 | ><PRE |
92 | CLASS="PROGRAMLISTING" |
93 | >typedef struct{ |
94 | Uint32 format; |
95 | int w, h; |
96 | int planes; |
97 | Uint16 *pitches; |
98 | Uint8 **pixels; |
99 | Uint32 hw_overlay:1; |
100 | } SDL_Overlay;</PRE |
101 | ></DIV |
102 | ><DIV |
103 | CLASS="REFSECT1" |
104 | ><A |
105 | NAME="AEN3470" |
106 | ></A |
107 | ><H2 |
108 | >Structure Data</H2 |
109 | ><DIV |
110 | CLASS="INFORMALTABLE" |
111 | ><A |
112 | NAME="AEN3472" |
113 | ></A |
114 | ><P |
115 | ></P |
116 | ><TABLE |
117 | BORDER="0" |
118 | CLASS="CALSTABLE" |
119 | ><TBODY |
120 | ><TR |
121 | ><TD |
122 | ALIGN="LEFT" |
123 | VALIGN="TOP" |
124 | ><TT |
125 | CLASS="STRUCTFIELD" |
126 | ><I |
127 | >format</I |
128 | ></TT |
129 | ></TD |
130 | ><TD |
131 | ALIGN="LEFT" |
132 | VALIGN="TOP" |
133 | >Overlay format (see below)</TD |
134 | ></TR |
135 | ><TR |
136 | ><TD |
137 | ALIGN="LEFT" |
138 | VALIGN="TOP" |
139 | ><TT |
140 | CLASS="STRUCTFIELD" |
141 | ><I |
142 | >w, h</I |
143 | ></TT |
144 | ></TD |
145 | ><TD |
146 | ALIGN="LEFT" |
147 | VALIGN="TOP" |
148 | >Width and height of overlay</TD |
149 | ></TR |
150 | ><TR |
151 | ><TD |
152 | ALIGN="LEFT" |
153 | VALIGN="TOP" |
154 | ><TT |
155 | CLASS="STRUCTFIELD" |
156 | ><I |
157 | >planes</I |
158 | ></TT |
159 | ></TD |
160 | ><TD |
161 | ALIGN="LEFT" |
162 | VALIGN="TOP" |
163 | >Number of planes in the overlay. Usually either 1 or 3</TD |
164 | ></TR |
165 | ><TR |
166 | ><TD |
167 | ALIGN="LEFT" |
168 | VALIGN="TOP" |
169 | ><TT |
170 | CLASS="STRUCTFIELD" |
171 | ><I |
172 | >pitches</I |
173 | ></TT |
174 | ></TD |
175 | ><TD |
176 | ALIGN="LEFT" |
177 | VALIGN="TOP" |
178 | >An array of pitches, one for each plane. Pitch is the length of a row in bytes.</TD |
179 | ></TR |
180 | ><TR |
181 | ><TD |
182 | ALIGN="LEFT" |
183 | VALIGN="TOP" |
184 | ><TT |
185 | CLASS="STRUCTFIELD" |
186 | ><I |
187 | >pixels</I |
188 | ></TT |
189 | ></TD |
190 | ><TD |
191 | ALIGN="LEFT" |
192 | VALIGN="TOP" |
193 | >An array of pointers to teh data of each plane. The overlay should be locked before these pointers are used.</TD |
194 | ></TR |
195 | ><TR |
196 | ><TD |
197 | ALIGN="LEFT" |
198 | VALIGN="TOP" |
199 | ><TT |
200 | CLASS="STRUCTFIELD" |
201 | ><I |
202 | >hw_overlay</I |
203 | ></TT |
204 | ></TD |
205 | ><TD |
206 | ALIGN="LEFT" |
207 | VALIGN="TOP" |
208 | >This will be set to 1 if the overlay is hardware accelerated.</TD |
209 | ></TR |
210 | ></TBODY |
211 | ></TABLE |
212 | ><P |
213 | ></P |
214 | ></DIV |
215 | ></DIV |
216 | ><DIV |
217 | CLASS="REFSECT1" |
218 | ><A |
219 | NAME="AEN3499" |
220 | ></A |
221 | ><H2 |
222 | >Description</H2 |
223 | ><P |
224 | >A <SPAN |
225 | CLASS="STRUCTNAME" |
226 | >SDL_Overlay</SPAN |
227 | > is similar to a <A |
228 | HREF="sdlsurface.html" |
229 | ><SPAN |
230 | CLASS="STRUCTNAME" |
231 | >SDL_Surface</SPAN |
232 | ></A |
233 | > except it stores a YUV overlay. All the fields are read only, except for <TT |
234 | CLASS="STRUCTFIELD" |
235 | ><I |
236 | >pixels</I |
237 | ></TT |
238 | > which should be <A |
239 | HREF="sdllockyuvoverlay.html" |
240 | >locked</A |
241 | > before use. The <TT |
242 | CLASS="STRUCTFIELD" |
243 | ><I |
244 | >format</I |
245 | ></TT |
246 | > field stores the format of the overlay which is one of the following: |
247 | <PRE |
248 | CLASS="PROGRAMLISTING" |
249 | >#define SDL_YV12_OVERLAY 0x32315659 /* Planar mode: Y + V + U */ |
250 | #define SDL_IYUV_OVERLAY 0x56555949 /* Planar mode: Y + U + V */ |
251 | #define SDL_YUY2_OVERLAY 0x32595559 /* Packed mode: Y0+U0+Y1+V0 */ |
252 | #define SDL_UYVY_OVERLAY 0x59565955 /* Packed mode: U0+Y0+V0+Y1 */ |
253 | #define SDL_YVYU_OVERLAY 0x55595659 /* Packed mode: Y0+V0+Y1+U0 */</PRE |
254 | > |
255 | More information on YUV formats can be found at <A |
256 | HREF="http://www.webartz.com/fourcc/indexyuv.htm" |
257 | TARGET="_top" |
258 | >http://www.webartz.com/fourcc/indexyuv.htm</A |
259 | >.</P |
260 | ></DIV |
261 | ><DIV |
262 | CLASS="REFSECT1" |
263 | ><A |
264 | NAME="AEN3510" |
265 | ></A |
266 | ><H2 |
267 | >See Also</H2 |
268 | ><P |
269 | ><A |
270 | HREF="sdlcreateyuvoverlay.html" |
271 | ><TT |
272 | CLASS="FUNCTION" |
273 | >SDL_CreateYUVOverlay</TT |
274 | ></A |
275 | >, |
276 | <A |
277 | HREF="sdllockyuvoverlay.html" |
278 | ><TT |
279 | CLASS="FUNCTION" |
280 | >SDL_LockYUVOverlay</TT |
281 | ></A |
282 | >, |
283 | <A |
284 | HREF="sdlunlockyuvoverlay.html" |
285 | ><TT |
286 | CLASS="FUNCTION" |
287 | >SDL_UnlockYUVOverlay</TT |
288 | ></A |
289 | >, |
290 | <A |
291 | HREF="sdlfreeyuvoverlay.html" |
292 | ><TT |
293 | CLASS="FUNCTION" |
294 | >SDL_FreeYUVOverlay</TT |
295 | ></A |
296 | ></P |
297 | ></DIV |
298 | ><DIV |
299 | CLASS="NAVFOOTER" |
300 | ><HR |
301 | ALIGN="LEFT" |
302 | WIDTH="100%"><TABLE |
303 | SUMMARY="Footer navigation table" |
304 | WIDTH="100%" |
305 | BORDER="0" |
306 | CELLPADDING="0" |
307 | CELLSPACING="0" |
308 | ><TR |
309 | ><TD |
310 | WIDTH="33%" |
311 | ALIGN="left" |
312 | VALIGN="top" |
313 | ><A |
314 | HREF="sdlvideoinfo.html" |
315 | ACCESSKEY="P" |
316 | >Prev</A |
317 | ></TD |
318 | ><TD |
319 | WIDTH="34%" |
320 | ALIGN="center" |
321 | VALIGN="top" |
322 | ><A |
323 | HREF="index.html" |
324 | ACCESSKEY="H" |
325 | >Home</A |
326 | ></TD |
327 | ><TD |
328 | WIDTH="33%" |
329 | ALIGN="right" |
330 | VALIGN="top" |
331 | ><A |
332 | HREF="wm.html" |
333 | ACCESSKEY="N" |
334 | >Next</A |
335 | ></TD |
336 | ></TR |
337 | ><TR |
338 | ><TD |
339 | WIDTH="33%" |
340 | ALIGN="left" |
341 | VALIGN="top" |
342 | >SDL_VideoInfo</TD |
343 | ><TD |
344 | WIDTH="34%" |
345 | ALIGN="center" |
346 | VALIGN="top" |
347 | ><A |
348 | HREF="video.html" |
349 | ACCESSKEY="U" |
350 | >Up</A |
351 | ></TD |
352 | ><TD |
353 | WIDTH="33%" |
354 | ALIGN="right" |
355 | VALIGN="top" |
356 | >Window Management</TD |
357 | ></TR |
358 | ></TABLE |
359 | ></DIV |
360 | ></BODY |
361 | ></HTML |
362 | > |