Mercurial > mplayer.hg
annotate libvo/vo_gl.c @ 11330:a974c00c779d
Removed temporary .cpp file used during the Matroska test. Updated the libebml and libmatroska requirements to at least v0.6.0 for both. There have been changes in the lacing code, and users WILL come and complain why mplayer, linked against older versions, will have issues playing newer files.
author | mosu |
---|---|
date | Thu, 30 Oct 2003 14:57:06 +0000 |
parents | dbb3f474c9de |
children | 85e503ddf65f |
rev | line source |
---|---|
1 | 1 #define TEXTUREFORMAT_32BPP |
2 | |
3 #include <stdio.h> | |
4 #include <stdlib.h> | |
5 #include <string.h> | |
6 #include <math.h> | |
4737
32e1f5042f65
I don't like such reports: '-vo dga:vidix or -vo x11:vidix works fine for me'
nick
parents:
4658
diff
changeset
|
7 #include <errno.h> |
1 | 8 |
9 #include "config.h" | |
10 #include "video_out.h" | |
11 #include "video_out_internal.h" | |
12 | |
13 #include <X11/Xlib.h> | |
14 #include <X11/Xutil.h> | |
15 //#include <X11/keysym.h> | |
16 #include <GL/glx.h> | |
17 #include <errno.h> | |
18 | |
19 #include <GL/gl.h> | |
20 | |
31 | 21 #include "x11_common.h" |
2057 | 22 #include "aspect.h" |
31 | 23 |
8148
5b39e79af5fe
removed get_info, using the same sheme as in libmpcodecs instead
alex
parents:
7931
diff
changeset
|
24 static vo_info_t info = |
1 | 25 { |
26 "X11 (OpenGL)", | |
27 "gl", | |
28 "Arpad Gereoffy <arpi@esp-team.scene.hu>", | |
29 "" | |
30 }; | |
31 | |
8148
5b39e79af5fe
removed get_info, using the same sheme as in libmpcodecs instead
alex
parents:
7931
diff
changeset
|
32 LIBVO_EXTERN(gl) |
5b39e79af5fe
removed get_info, using the same sheme as in libmpcodecs instead
alex
parents:
7931
diff
changeset
|
33 |
1 | 34 /* local data */ |
35 static unsigned char *ImageData=NULL; | |
36 | |
37 static GLXContext wsGLXContext; | |
2041
ba8a225d1a18
now using x11_common stuff for X11 opening and w/h/bpp query
arpi
parents:
2040
diff
changeset
|
38 static int wsGLXAttrib[] = { GLX_RGBA, |
1 | 39 GLX_RED_SIZE,1, |
40 GLX_GREEN_SIZE,1, | |
41 GLX_BLUE_SIZE,1, | |
42 GLX_DOUBLEBUFFER, | |
43 None }; | |
44 | |
45 | |
46 static uint32_t image_width; | |
47 static uint32_t image_height; | |
48 static uint32_t image_bytes; | |
49 | |
10757
3aea64e0d6d9
Avoid flickering during resizes. Keep video contents even when paused. Fix by Tomas Simonaitis <haden@homelan.lt>
mosu
parents:
10138
diff
changeset
|
50 static int int_pause; |
3aea64e0d6d9
Avoid flickering during resizes. Keep video contents even when paused. Fix by Tomas Simonaitis <haden@homelan.lt>
mosu
parents:
10138
diff
changeset
|
51 |
1 | 52 static uint32_t texture_width; |
53 static uint32_t texture_height; | |
54 | |
8654
2c4cebb8637d
- optional slice height for -vo gl (example: -vo gl:32)
arpi
parents:
8148
diff
changeset
|
55 static int slice_height=1; |
2c4cebb8637d
- optional slice height for -vo gl (example: -vo gl:32)
arpi
parents:
8148
diff
changeset
|
56 |
612 | 57 static void resize(int x,int y){ |
1290 | 58 printf("[gl] Resize: %dx%d\n",x,y); |
1 | 59 glViewport( 0, 0, x, y ); |
60 | |
61 glMatrixMode(GL_PROJECTION); | |
62 glLoadIdentity(); | |
63 glOrtho(0, image_width, image_height, 0, -1,1); | |
64 | |
65 glMatrixMode(GL_MODELVIEW); | |
66 glLoadIdentity(); | |
67 } | |
68 | |
69 /* connect to server, create and map window, | |
70 * allocate colors and (shared) memory | |
71 */ | |
72 static uint32_t | |
7124
eca7dbad0166
finally removed query_vaa, bes_da and vo_tune_info - the obsoleted libvo api
alex
parents:
7111
diff
changeset
|
73 config(uint32_t width, uint32_t height, uint32_t d_width, uint32_t d_height, uint32_t flags, char *title, uint32_t format) |
1 | 74 { |
2041
ba8a225d1a18
now using x11_common stuff for X11 opening and w/h/bpp query
arpi
parents:
2040
diff
changeset
|
75 // int screen; |
1 | 76 unsigned int fg, bg; |
77 XSizeHints hint; | |
78 XVisualInfo *vinfo; | |
79 XEvent xev; | |
80 | |
1109 | 81 // XGCValues xgcv; |
1 | 82 |
83 image_height = height; | |
84 image_width = width; | |
10919 | 85 vo_dwidth = d_width; |
86 vo_dheight = d_height; | |
10757
3aea64e0d6d9
Avoid flickering during resizes. Keep video contents even when paused. Fix by Tomas Simonaitis <haden@homelan.lt>
mosu
parents:
10138
diff
changeset
|
87 |
3aea64e0d6d9
Avoid flickering during resizes. Keep video contents even when paused. Fix by Tomas Simonaitis <haden@homelan.lt>
mosu
parents:
10138
diff
changeset
|
88 int_pause = 0; |
3aea64e0d6d9
Avoid flickering during resizes. Keep video contents even when paused. Fix by Tomas Simonaitis <haden@homelan.lt>
mosu
parents:
10138
diff
changeset
|
89 |
2249
48f0ac1e9d13
Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents:
2057
diff
changeset
|
90 aspect_save_orig(width,height); |
48f0ac1e9d13
Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents:
2057
diff
changeset
|
91 aspect_save_prescale(d_width,d_height); |
48f0ac1e9d13
Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents:
2057
diff
changeset
|
92 aspect_save_screenres(vo_screenwidth,vo_screenheight); |
48f0ac1e9d13
Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents:
2057
diff
changeset
|
93 |
48f0ac1e9d13
Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents:
2057
diff
changeset
|
94 aspect(&d_width,&d_height,A_NOZOOM); |
2040 | 95 #ifdef X11_FULLSCREEN |
6095 | 96 // if( flags&0x01 ){ // (-fs) |
97 // aspect(&d_width,&d_height,A_ZOOM); | |
98 // } | |
2040 | 99 #endif |
1 | 100 hint.x = 0; |
101 hint.y = 0; | |
102 hint.width = d_width; | |
103 hint.height = d_height; | |
104 hint.flags = PPosition | PSize; | |
105 | |
106 /* Get some colors */ | |
107 | |
2041
ba8a225d1a18
now using x11_common stuff for X11 opening and w/h/bpp query
arpi
parents:
2040
diff
changeset
|
108 bg = WhitePixel(mDisplay, mScreen); |
ba8a225d1a18
now using x11_common stuff for X11 opening and w/h/bpp query
arpi
parents:
2040
diff
changeset
|
109 fg = BlackPixel(mDisplay, mScreen); |
1 | 110 |
111 /* Make the window */ | |
112 | |
2041
ba8a225d1a18
now using x11_common stuff for X11 opening and w/h/bpp query
arpi
parents:
2040
diff
changeset
|
113 vinfo=glXChooseVisual( mDisplay,mScreen,wsGLXAttrib ); |
1290 | 114 if (vinfo == NULL) |
115 { | |
116 printf("[gl] no GLX support present\n"); | |
117 return -1; | |
118 } | |
1 | 119 |
10757
3aea64e0d6d9
Avoid flickering during resizes. Keep video contents even when paused. Fix by Tomas Simonaitis <haden@homelan.lt>
mosu
parents:
10138
diff
changeset
|
120 |
1137
4c7b219e126c
patch: some X11 compliance fixed: set ClassHint and better fullscreen mode
arpi_esp
parents:
1109
diff
changeset
|
121 |
7777 | 122 if ( vo_window == None ) |
123 { | |
10757
3aea64e0d6d9
Avoid flickering during resizes. Keep video contents even when paused. Fix by Tomas Simonaitis <haden@homelan.lt>
mosu
parents:
10138
diff
changeset
|
124 vo_window = vo_x11_create_smooth_window(mDisplay, mRootWin, vinfo->visual, hint.x, hint.y, hint.width, hint.height, |
3aea64e0d6d9
Avoid flickering during resizes. Keep video contents even when paused. Fix by Tomas Simonaitis <haden@homelan.lt>
mosu
parents:
10138
diff
changeset
|
125 vinfo->depth, XCreateColormap(mDisplay, mRootWin, vinfo->visual, AllocNone)); |
1 | 126 |
7777 | 127 vo_x11_classhint( mDisplay,vo_window,"gl" ); |
128 vo_hidecursor(mDisplay,vo_window); | |
1 | 129 |
7777 | 130 // if ( flags&0x01 ) vo_x11_decoration( mDisplay,vo_window,0 ); |
131 XSelectInput(mDisplay, vo_window, StructureNotifyMask); | |
132 /* Tell other applications about this window */ | |
10138
5e286cc6ad21
Removed YUV (YV12) and BGR support, leaving the native RGB support. Also cleaned some other parts.
alex
parents:
8654
diff
changeset
|
133 XSetStandardProperties(mDisplay, vo_window, title, title, None, NULL, 0, &hint); |
7777 | 134 /* Map window. */ |
135 XMapWindow(mDisplay, vo_window); | |
136 if ( flags&1 ) vo_x11_fullscreen(); | |
4017 | 137 #ifdef HAVE_XINERAMA |
7777 | 138 vo_x11_xinerama_move(mDisplay,vo_window); |
4017 | 139 #endif |
1 | 140 |
7777 | 141 /* Wait for map. */ |
142 do | |
143 { | |
2041
ba8a225d1a18
now using x11_common stuff for X11 opening and w/h/bpp query
arpi
parents:
2040
diff
changeset
|
144 XNextEvent(mDisplay, &xev); |
7777 | 145 } |
146 while (xev.type != MapNotify || xev.xmap.event != vo_window); | |
1 | 147 |
7777 | 148 XSelectInput(mDisplay, vo_window, NoEventMask); |
149 } | |
1 | 150 |
7777 | 151 if ( vo_config_count ) glXDestroyContext( mDisplay,wsGLXContext ); |
152 wsGLXContext=glXCreateContext( mDisplay,vinfo,NULL,True ); | |
153 glXMakeCurrent( mDisplay,vo_window,wsGLXContext ); | |
1 | 154 |
2041
ba8a225d1a18
now using x11_common stuff for X11 opening and w/h/bpp query
arpi
parents:
2040
diff
changeset
|
155 XFlush(mDisplay); |
ba8a225d1a18
now using x11_common stuff for X11 opening and w/h/bpp query
arpi
parents:
2040
diff
changeset
|
156 XSync(mDisplay, False); |
1 | 157 |
6953
ce67cc1f0beb
ignore BadAccess error at XSelectInput() (grabbing mouse etc) with warning
arpi
parents:
6212
diff
changeset
|
158 vo_x11_selectinput_witherr(mDisplay, vo_window, StructureNotifyMask | KeyPressMask | PointerMotionMask |
10757
3aea64e0d6d9
Avoid flickering during resizes. Keep video contents even when paused. Fix by Tomas Simonaitis <haden@homelan.lt>
mosu
parents:
10138
diff
changeset
|
159 | ButtonPressMask | ButtonReleaseMask | ExposureMask |
4658 | 160 ); |
1 | 161 |
162 texture_width=32; | |
10138
5e286cc6ad21
Removed YUV (YV12) and BGR support, leaving the native RGB support. Also cleaned some other parts.
alex
parents:
8654
diff
changeset
|
163 while(texture_width<image_width || texture_width<image_height) texture_width*=2; |
1 | 164 texture_height=texture_width; |
165 | |
10138
5e286cc6ad21
Removed YUV (YV12) and BGR support, leaving the native RGB support. Also cleaned some other parts.
alex
parents:
8654
diff
changeset
|
166 image_bytes=(IMGFMT_RGB_DEPTH(format)+7)/8; |
1 | 167 |
7777 | 168 if ( ImageData ) free( ImageData ); |
1 | 169 ImageData=malloc(texture_width*texture_height*image_bytes); |
170 memset(ImageData,128,texture_width*texture_height*image_bytes); | |
171 | |
172 glDisable(GL_BLEND); | |
173 glDisable(GL_DEPTH_TEST); | |
174 glDepthMask(GL_FALSE); | |
175 glDisable(GL_CULL_FACE); | |
176 | |
177 glEnable(GL_TEXTURE_2D); | |
178 | |
1290 | 179 printf("[gl] Creating %dx%d texture...\n",texture_width,texture_height); |
1 | 180 |
181 #if 1 | |
182 // glBindTexture(GL_TEXTURE_2D, texture_id); | |
183 glTexParameterf(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER, GL_LINEAR); | |
184 glTexParameterf(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER, GL_LINEAR); | |
10138
5e286cc6ad21
Removed YUV (YV12) and BGR support, leaving the native RGB support. Also cleaned some other parts.
alex
parents:
8654
diff
changeset
|
185 /* Old OpenGL 1.0 used the third parameter (known as internalFormat) as an |
5e286cc6ad21
Removed YUV (YV12) and BGR support, leaving the native RGB support. Also cleaned some other parts.
alex
parents:
8654
diff
changeset
|
186 integer, which indicated the bytes per pixel (bpp). Later in OpenGL 1.1 |
5e286cc6ad21
Removed YUV (YV12) and BGR support, leaving the native RGB support. Also cleaned some other parts.
alex
parents:
8654
diff
changeset
|
187 they switched to constants, like GL_RGB8. GL_RGB8 means 8 bits for each |
5e286cc6ad21
Removed YUV (YV12) and BGR support, leaving the native RGB support. Also cleaned some other parts.
alex
parents:
8654
diff
changeset
|
188 channel (R,G,B), so it's equal to RGB24. It should be safe to pass the |
5e286cc6ad21
Removed YUV (YV12) and BGR support, leaving the native RGB support. Also cleaned some other parts.
alex
parents:
8654
diff
changeset
|
189 image_bytes to internalFormat with newer OpenGL versions. |
5e286cc6ad21
Removed YUV (YV12) and BGR support, leaving the native RGB support. Also cleaned some other parts.
alex
parents:
8654
diff
changeset
|
190 Anyway, I'm leaving this so as it was, it doesn't hurt, as OpenGL 1.1 is |
5e286cc6ad21
Removed YUV (YV12) and BGR support, leaving the native RGB support. Also cleaned some other parts.
alex
parents:
8654
diff
changeset
|
191 about 10 years old too. -- alex |
5e286cc6ad21
Removed YUV (YV12) and BGR support, leaving the native RGB support. Also cleaned some other parts.
alex
parents:
8654
diff
changeset
|
192 */ |
1 | 193 #ifdef TEXTUREFORMAT_32BPP |
194 glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB8, texture_width, texture_height, 0, | |
195 #else | |
10138
5e286cc6ad21
Removed YUV (YV12) and BGR support, leaving the native RGB support. Also cleaned some other parts.
alex
parents:
8654
diff
changeset
|
196 glTexImage2D(GL_TEXTURE_2D, 0, image_bytes, texture_width, texture_height, 0, |
1 | 197 #endif |
198 (image_bytes==4)?GL_RGBA:GL_BGR, GL_UNSIGNED_BYTE, ImageData); | |
199 #endif | |
200 | |
201 resize(d_width,d_height); | |
202 | |
203 glClearColor( 1.0f,0.0f,1.0f,0.0f ); | |
204 glClear( GL_COLOR_BUFFER_BIT ); | |
205 | |
206 // printf("OpenGL setup OK!\n"); | |
207 | |
2041
ba8a225d1a18
now using x11_common stuff for X11 opening and w/h/bpp query
arpi
parents:
2040
diff
changeset
|
208 saver_off(mDisplay); // turning off screen saver |
ba8a225d1a18
now using x11_common stuff for X11 opening and w/h/bpp query
arpi
parents:
2040
diff
changeset
|
209 |
1 | 210 return 0; |
211 } | |
212 | |
31 | 213 static void check_events(void) |
1 | 214 { |
2041
ba8a225d1a18
now using x11_common stuff for X11 opening and w/h/bpp query
arpi
parents:
2040
diff
changeset
|
215 int e=vo_x11_check_events(mDisplay); |
31 | 216 if(e&VO_EVENT_RESIZE) resize(vo_dwidth,vo_dheight); |
10757
3aea64e0d6d9
Avoid flickering during resizes. Keep video contents even when paused. Fix by Tomas Simonaitis <haden@homelan.lt>
mosu
parents:
10138
diff
changeset
|
217 if(e&VO_EVENT_EXPOSE && int_pause) flip_page(); |
31 | 218 } |
1 | 219 |
1501
d40f2b686846
changes according to -utf8 option, draw_osd() function added
atlka
parents:
1302
diff
changeset
|
220 static void draw_osd(void) |
d40f2b686846
changes according to -utf8 option, draw_osd() function added
atlka
parents:
1302
diff
changeset
|
221 { |
d40f2b686846
changes according to -utf8 option, draw_osd() function added
atlka
parents:
1302
diff
changeset
|
222 } |
31 | 223 |
224 static void | |
225 flip_page(void) | |
226 { | |
227 | |
1 | 228 // glEnable(GL_TEXTURE_2D); |
229 // glBindTexture(GL_TEXTURE_2D, texture_id); | |
230 | |
231 glColor3f(1,1,1); | |
232 glBegin(GL_QUADS); | |
233 glTexCoord2f(0,0);glVertex2i(0,0); | |
234 glTexCoord2f(0,1);glVertex2i(0,texture_height); | |
235 glTexCoord2f(1,1);glVertex2i(texture_width,texture_height); | |
236 glTexCoord2f(1,0);glVertex2i(texture_width,0); | |
237 glEnd(); | |
238 | |
239 // glFlush(); | |
240 glFinish(); | |
6095 | 241 glXSwapBuffers( mDisplay,vo_window ); |
242 | |
1 | 243 } |
244 | |
245 //static inline uint32_t draw_slice_x11(uint8_t *src[], uint32_t slice_num) | |
246 static uint32_t draw_slice(uint8_t *src[], int stride[], int w,int h,int x,int y) | |
247 { | |
248 return 0; | |
249 } | |
250 | |
251 | |
10138
5e286cc6ad21
Removed YUV (YV12) and BGR support, leaving the native RGB support. Also cleaned some other parts.
alex
parents:
8654
diff
changeset
|
252 static uint32_t |
5e286cc6ad21
Removed YUV (YV12) and BGR support, leaving the native RGB support. Also cleaned some other parts.
alex
parents:
8654
diff
changeset
|
253 draw_frame(uint8_t *src[]) |
1 | 254 { |
255 int i; | |
256 uint8_t *ImageData=src[0]; | |
257 | |
8654
2c4cebb8637d
- optional slice height for -vo gl (example: -vo gl:32)
arpi
parents:
8148
diff
changeset
|
258 for(i=0;i<image_height;i+=slice_height){ |
1 | 259 glTexSubImage2D( GL_TEXTURE_2D, // target |
260 0, // level | |
261 0, // x offset | |
262 // image_height-1-i, // y offset | |
263 i, // y offset | |
264 image_width, // width | |
8654
2c4cebb8637d
- optional slice height for -vo gl (example: -vo gl:32)
arpi
parents:
8148
diff
changeset
|
265 (i+slice_height<=image_height)?slice_height:image_height-i, // height |
1 | 266 (image_bytes==4)?GL_RGBA:GL_RGB, // format |
267 GL_UNSIGNED_BYTE, // type | |
268 ImageData+i*image_bytes*image_width ); // *pixels | |
269 } | |
270 | |
271 return 0; | |
272 } | |
273 | |
274 static uint32_t | |
275 query_format(uint32_t format) | |
276 { | |
10138
5e286cc6ad21
Removed YUV (YV12) and BGR support, leaving the native RGB support. Also cleaned some other parts.
alex
parents:
8654
diff
changeset
|
277 if ((format == IMGFMT_RGB24) || (format == IMGFMT_RGB32)) |
6212 | 278 return VFCAP_CSP_SUPPORTED | VFCAP_CSP_SUPPORTED_BY_HW; |
1 | 279 return 0; |
280 } | |
281 | |
282 | |
283 static void | |
284 uninit(void) | |
285 { | |
6095 | 286 if ( !vo_config_count ) return; |
2041
ba8a225d1a18
now using x11_common stuff for X11 opening and w/h/bpp query
arpi
parents:
2040
diff
changeset
|
287 saver_on(mDisplay); // screen saver back on |
6095 | 288 vo_x11_uninit(); |
1 | 289 } |
4352 | 290 |
291 static uint32_t preinit(const char *arg) | |
292 { | |
4737
32e1f5042f65
I don't like such reports: '-vo dga:vidix or -vo x11:vidix works fine for me'
nick
parents:
4658
diff
changeset
|
293 if(arg) |
32e1f5042f65
I don't like such reports: '-vo dga:vidix or -vo x11:vidix works fine for me'
nick
parents:
4658
diff
changeset
|
294 { |
8654
2c4cebb8637d
- optional slice height for -vo gl (example: -vo gl:32)
arpi
parents:
8148
diff
changeset
|
295 slice_height = atoi(arg); |
2c4cebb8637d
- optional slice height for -vo gl (example: -vo gl:32)
arpi
parents:
8148
diff
changeset
|
296 if (slice_height <= 0) |
2c4cebb8637d
- optional slice height for -vo gl (example: -vo gl:32)
arpi
parents:
8148
diff
changeset
|
297 slice_height = 65536; |
4737
32e1f5042f65
I don't like such reports: '-vo dga:vidix or -vo x11:vidix works fine for me'
nick
parents:
4658
diff
changeset
|
298 } |
8654
2c4cebb8637d
- optional slice height for -vo gl (example: -vo gl:32)
arpi
parents:
8148
diff
changeset
|
299 else |
2c4cebb8637d
- optional slice height for -vo gl (example: -vo gl:32)
arpi
parents:
8148
diff
changeset
|
300 { |
2c4cebb8637d
- optional slice height for -vo gl (example: -vo gl:32)
arpi
parents:
8148
diff
changeset
|
301 slice_height = 4; |
2c4cebb8637d
- optional slice height for -vo gl (example: -vo gl:32)
arpi
parents:
8148
diff
changeset
|
302 } |
2c4cebb8637d
- optional slice height for -vo gl (example: -vo gl:32)
arpi
parents:
8148
diff
changeset
|
303 printf("[vo_gl] Using %d as slice_height (0 means image_height).\n", slice_height); |
7777 | 304 |
7931 | 305 if( !vo_init() ) return -1; // Can't open X11 |
7777 | 306 |
4737
32e1f5042f65
I don't like such reports: '-vo dga:vidix or -vo x11:vidix works fine for me'
nick
parents:
4658
diff
changeset
|
307 return 0; |
4352 | 308 } |
309 | |
4596 | 310 static uint32_t control(uint32_t request, void *data, ...) |
4352 | 311 { |
4592
5fbfd8545c3b
query_ stuff replaced by new control() - patch by David Holm
arpi
parents:
4448
diff
changeset
|
312 switch (request) { |
10757
3aea64e0d6d9
Avoid flickering during resizes. Keep video contents even when paused. Fix by Tomas Simonaitis <haden@homelan.lt>
mosu
parents:
10138
diff
changeset
|
313 case VOCTRL_PAUSE: return (int_pause=1); |
3aea64e0d6d9
Avoid flickering during resizes. Keep video contents even when paused. Fix by Tomas Simonaitis <haden@homelan.lt>
mosu
parents:
10138
diff
changeset
|
314 case VOCTRL_RESUME: return (int_pause=0); |
4592
5fbfd8545c3b
query_ stuff replaced by new control() - patch by David Holm
arpi
parents:
4448
diff
changeset
|
315 case VOCTRL_QUERY_FORMAT: |
5fbfd8545c3b
query_ stuff replaced by new control() - patch by David Holm
arpi
parents:
4448
diff
changeset
|
316 return query_format(*((uint32_t*)data)); |
6095 | 317 case VOCTRL_FULLSCREEN: |
318 vo_x11_fullscreen(); | |
319 return VO_TRUE; | |
4592
5fbfd8545c3b
query_ stuff replaced by new control() - patch by David Holm
arpi
parents:
4448
diff
changeset
|
320 } |
5fbfd8545c3b
query_ stuff replaced by new control() - patch by David Holm
arpi
parents:
4448
diff
changeset
|
321 return VO_NOTIMPL; |
4352 | 322 } |