annotate libvo/vo_winvidix.c @ 36622:b9dc795036a2

Group video and audio related entries in context menu together. This makes the menu more consistent and will give the user better orientation.
author ib
date Fri, 24 Jan 2014 01:00:35 +0000
parents 5d3f93051de9
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
1 /*
28446
7681eab10aea Add standard license headers, unify header formatting.
diego
parents: 28051
diff changeset
2 * VIDIX-accelerated overlay in a Win32 window
7681eab10aea Add standard license headers, unify header formatting.
diego
parents: 28051
diff changeset
3 *
7681eab10aea Add standard license headers, unify header formatting.
diego
parents: 28051
diff changeset
4 * copyright (C) 2003 Sascha Sommer
7681eab10aea Add standard license headers, unify header formatting.
diego
parents: 28051
diff changeset
5 *
7681eab10aea Add standard license headers, unify header formatting.
diego
parents: 28051
diff changeset
6 * This file is part of MPlayer.
7681eab10aea Add standard license headers, unify header formatting.
diego
parents: 28051
diff changeset
7 *
7681eab10aea Add standard license headers, unify header formatting.
diego
parents: 28051
diff changeset
8 * MPlayer is free software; you can redistribute it and/or modify
7681eab10aea Add standard license headers, unify header formatting.
diego
parents: 28051
diff changeset
9 * it under the terms of the GNU General Public License as published by
7681eab10aea Add standard license headers, unify header formatting.
diego
parents: 28051
diff changeset
10 * the Free Software Foundation; either version 2 of the License, or
7681eab10aea Add standard license headers, unify header formatting.
diego
parents: 28051
diff changeset
11 * (at your option) any later version.
7681eab10aea Add standard license headers, unify header formatting.
diego
parents: 28051
diff changeset
12 *
7681eab10aea Add standard license headers, unify header formatting.
diego
parents: 28051
diff changeset
13 * MPlayer is distributed in the hope that it will be useful,
7681eab10aea Add standard license headers, unify header formatting.
diego
parents: 28051
diff changeset
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
7681eab10aea Add standard license headers, unify header formatting.
diego
parents: 28051
diff changeset
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
7681eab10aea Add standard license headers, unify header formatting.
diego
parents: 28051
diff changeset
16 * GNU General Public License for more details.
7681eab10aea Add standard license headers, unify header formatting.
diego
parents: 28051
diff changeset
17 *
7681eab10aea Add standard license headers, unify header formatting.
diego
parents: 28051
diff changeset
18 * You should have received a copy of the GNU General Public License along
7681eab10aea Add standard license headers, unify header formatting.
diego
parents: 28051
diff changeset
19 * with MPlayer; if not, write to the Free Software Foundation, Inc.,
7681eab10aea Add standard license headers, unify header formatting.
diego
parents: 28051
diff changeset
20 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
7681eab10aea Add standard license headers, unify header formatting.
diego
parents: 28051
diff changeset
21 */
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
22
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
23 #include <stdio.h>
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
24 #include <stdlib.h>
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
25 #include <string.h>
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
26 #include <math.h>
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
27 #include <errno.h>
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
28
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
29 #include "config.h"
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
30 #include "video_out.h"
36517
5d3f93051de9 Remove empty draw_slice and draw_frame stubs.
reimar
parents: 33305
diff changeset
31 #define NO_DRAW_FRAME
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
32 #include "video_out_internal.h"
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
33
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
34 #include <windows.h>
13787
e047e70a9767 Handle "xxx.h" vs "../xxx.h" include paths in a consistent way.
diego
parents: 12861
diff changeset
35 #include "osdep/keycodes.h"
e047e70a9767 Handle "xxx.h" vs "../xxx.h" include paths in a consistent way.
diego
parents: 12861
diff changeset
36 #include "input/input.h"
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
37
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
38 #include "aspect.h"
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
39 #include "mp_msg.h"
22823
98eaf29b5dee Code cleanup: don't include a .c file in mplayer.c and fix a few
rathann
parents: 16892
diff changeset
40 #include "mp_fifo.h"
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
41
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
42 #include "vosub_vidix.h"
27079
df448e1248b2 remove now useless vidixlib.h file
ben
parents: 26755
diff changeset
43 #include "vidix/vidix.h"
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
44
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
45
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
46 static const vo_info_t info =
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
47 {
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
48 "WIN32 (VIDIX)",
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
49 "winvidix",
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
50 "Sascha Sommer",
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
51 ""
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
52 };
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
53
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
54 LIBVO_EXTERN(winvidix)
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
55
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
56 /* VIDIX related */
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
57 static char *vidix_name;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
58
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
59 /* Image parameters */
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
60 static uint32_t image_width;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
61 static uint32_t image_height;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
62 static uint32_t image_format;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
63 /* Window parameters */
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
64 static HWND hWnd=NULL,hWndFS=NULL;
15822
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
65 static float window_aspect;
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
66
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
67 static vidix_grkey_t gr_key;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
68
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
69
28051
9e739bdb049c Get rid of pointless 'extern' keywords.
diego
parents: 27719
diff changeset
70 void set_video_eq(int cap);
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
71
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
72
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
73 static LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
74 {
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
75 switch (message){
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
76 case WM_DESTROY:
15822
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
77 PostQuitMessage(0);
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
78 return 0;
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
79 case WM_CLOSE:
16892
3470c810527b libvo input cleanup: remove the dependency on libinput,
albeu
parents: 16280
diff changeset
80 mplayer_put_key(KEY_CLOSE_WIN);
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
81 break;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
82 case WM_WINDOWPOSCHANGED:
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
83 {
15822
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
84 int tmpheight=0;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
85 /*calculate new window rect*/
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
86 if(!vo_fs){
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
87 RECT rd;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
88 POINT point_window;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
89 if(!hWnd)hWnd=hwnd;
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
90 ShowCursor(TRUE);
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
91 point_window.x = 0;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
92 point_window.y = 0;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
93 ClientToScreen(hWnd,&point_window);
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
94 GetClientRect(hWnd,&rd);
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
95
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
96 vo_dwidth=rd.right - rd.left;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
97 vo_dheight=rd.bottom - rd.top;
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
98 vo_dx =point_window.x;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
99 vo_dy =point_window.y;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
100 // aspect(&vo_dwidth, &vo_dheight, A_NOZOOM);
15822
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
101
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
102 /* keep aspect on resize, borrowed from vo_directx.c */
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
103 tmpheight = ((float)vo_dwidth/window_aspect);
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
104 tmpheight += tmpheight % 2;
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
105 if(tmpheight > vo_dheight)
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
106 {
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
107 vo_dwidth = ((float)vo_dheight*window_aspect);
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
108 vo_dwidth += vo_dwidth % 2;
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
109 }
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
110 else vo_dheight = tmpheight;
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
111 rd.right = rd.left + vo_dwidth;
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
112 rd.bottom = rd.top + vo_dheight;
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
113
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
114 if(rd.left < 0) rd.left = 0;
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
115 if(rd.right > vo_screenwidth) rd.right = vo_screenwidth;
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
116 if(rd.top < 0) rd.top = 0;
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
117 if(rd.bottom > vo_screenheight) rd.bottom = vo_screenheight;
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
118
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
119 AdjustWindowRect(&rd, WS_OVERLAPPEDWINDOW | WS_SIZEBOX, 0);
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
120 SetWindowPos(hWnd, HWND_TOPMOST, vo_dx+rd.left, vo_dy+rd.top, rd.right-rd.left, rd.bottom-rd.top, SWP_NOOWNERZORDER);
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
121 }
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
122 else {
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
123 if(ShowCursor(FALSE)>=0)while(ShowCursor(FALSE)>=0){}
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
124 aspect(&vo_dwidth, &vo_dheight, A_ZOOM);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
125 vo_dx = (vo_screenwidth - vo_dwidth)/2;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
126 vo_dy = (vo_screenheight - vo_dheight)/2;
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
127 }
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
128 /*update vidix*/
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
129 /* FIXME: implement runtime resize/move if possible, this way is very ugly! */
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
130 vidix_stop();
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
131 if(vidix_init(image_width, image_height, vo_dx, vo_dy, vo_dwidth, vo_dheight, image_format, vo_depthonscreen, vo_screenwidth, vo_screenheight) != 0)
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
132 mp_msg(MSGT_VO, MSGL_FATAL, "Can't initialize VIDIX driver: %s\n", strerror(errno));
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
133 /*set colorkey*/
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
134 vidix_start();
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
135 mp_msg(MSGT_VO, MSGL_V, "[winvidix] window properties: pos: %dx%d, size: %dx%d\n",vo_dx, vo_dy, vo_dwidth, vo_dheight);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
136 if(vidix_grkey_support()){
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
137 vidix_grkey_get(&gr_key);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
138 gr_key.key_op = KEYS_PUT;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
139 gr_key.ckey.op = CKEY_TRUE;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
140 if(vo_fs)gr_key.ckey.red = gr_key.ckey.green = gr_key.ckey.blue = 0;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
141 else {
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
142 gr_key.ckey.red = gr_key.ckey.blue = 255;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
143 gr_key.ckey.green = 0;
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
144 }
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
145 vidix_grkey_set(&gr_key);
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
146 }
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
147
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
148 }
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
149 break;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
150 case WM_SYSCOMMAND:
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
151 switch (wParam){
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
152 case SC_SCREENSAVE:
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
153 case SC_MONITORPOWER:
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
154 return 0;
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
155 }
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
156 break;
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
157 case WM_KEYDOWN:
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
158 switch (wParam){
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
159 case VK_LEFT:
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
160 {mplayer_put_key(KEY_LEFT);break;}
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
161 case VK_UP:
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
162 {mplayer_put_key(KEY_UP);break;}
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
163 case VK_RIGHT:
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
164 {mplayer_put_key(KEY_RIGHT);break;}
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
165 case VK_DOWN:
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
166 {mplayer_put_key(KEY_DOWN);break;}
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
167 case VK_TAB:
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
168 {mplayer_put_key(KEY_TAB);break;}
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
169 case VK_CONTROL:
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
170 {mplayer_put_key(KEY_CTRL);break;}
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
171 case VK_DELETE:
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
172 {mplayer_put_key(KEY_DELETE);break;}
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
173 case VK_INSERT:
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
174 {mplayer_put_key(KEY_INSERT);break;}
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
175 case VK_HOME:
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
176 {mplayer_put_key(KEY_HOME);break;}
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
177 case VK_END:
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
178 {mplayer_put_key(KEY_END);break;}
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
179 case VK_PRIOR:
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
180 {mplayer_put_key(KEY_PAGE_UP);break;}
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
181 case VK_NEXT:
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
182 {mplayer_put_key(KEY_PAGE_DOWN);break;}
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
183 case VK_ESCAPE:
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
184 {mplayer_put_key(KEY_ESC);break;}
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
185 }
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
186 break;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
187 case WM_CHAR:
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
188 mplayer_put_key(wParam);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
189 break;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
190 }
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
191 return DefWindowProc(hwnd, message, wParam, lParam);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
192 }
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
193
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
194
16171
fd51fd1ff231 Fix the return types of all (six) libvo API functions. Used to be uint32_t, but
ivo
parents: 15822
diff changeset
195 static int config(uint32_t width, uint32_t height, uint32_t d_width,uint32_t d_height, uint32_t flags, char *title, uint32_t format){
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
196 title = "MPlayer VIDIX WIN32 Overlay";
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
197
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
198 panscan_init();
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
199
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
200 image_height = height;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
201 image_width = width;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
202 image_format = format;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
203 vo_screenwidth = GetSystemMetrics(SM_CXSCREEN);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
204 vo_screenheight = GetSystemMetrics(SM_CYSCREEN);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
205 vo_depthonscreen = GetDeviceCaps(GetDC(GetDesktopWindow()),BITSPIXEL);
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
206
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
207
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
208 aspect_save_orig(width, height);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
209 aspect_save_prescale(d_width, d_height);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
210 aspect_save_screenres(vo_screenwidth, vo_screenheight);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
211
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
212 vo_dx = 0;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
213 vo_dy = 0;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
214
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
215 vo_dx=( vo_screenwidth - d_width ) / 2; vo_dy=( vo_screenheight - d_height ) / 2;
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
216 geometry(&vo_dx, &vo_dy, &d_width, &d_height, vo_screenwidth, vo_screenheight);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
217
15212
05aa13cdf92f replace VO and VF numeric flags with #defined identifiers
henry
parents: 13787
diff changeset
218 vo_fs = flags&VOFLAG_FULLSCREEN;
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
219
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
220
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
221 aspect(&d_width, &d_height, A_NOZOOM);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
222 vo_dwidth=d_width; vo_dheight=d_height;
15822
0651bf280391 keep aspect when resizing, quit MPlayer when closing the window patch by Erik Lunchpail <erik_27can at yahoo.com>
faust3
parents: 15621
diff changeset
223 window_aspect = (float)d_width / (float)d_height;
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
224
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
225
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
226 if(!vo_config_count){
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
227 HINSTANCE hInstance = GetModuleHandle(NULL);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
228 WNDCLASS wc;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
229 RECT rd;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
230 rd.left = vo_dx;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
231 rd.top = vo_dy;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
232 rd.right = rd.left + vo_dwidth;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
233 rd.bottom = rd.top + vo_dheight;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
234 AdjustWindowRect(&rd,WS_OVERLAPPEDWINDOW| WS_SIZEBOX,0);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
235 wc.style = CS_HREDRAW | CS_VREDRAW;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
236 wc.lpfnWndProc = WndProc;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
237 wc.cbClsExtra = 0;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
238 wc.cbWndExtra = 0;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
239 wc.hInstance = hInstance;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
240 wc.hCursor = LoadCursor(NULL,IDC_ARROW);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
241 wc.hIcon =ExtractIcon(hInstance,"mplayer.exe",0);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
242 //LoadIcon(NULL,IDI_APPLICATION);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
243 wc.hbrBackground = CreateSolidBrush(RGB(255,0,255));
12858
cbcc205a740e embarassing typo and new name
diego
parents: 11462
diff changeset
244 wc.lpszClassName = "MPlayer - The Movie Player";
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
245 wc.lpszMenuName = NULL;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
246 RegisterClass(&wc);
12861
88aba9a06162 name change
diego
parents: 12858
diff changeset
247 hWnd = CreateWindow("MPlayer - The Movie Player",
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
248 title,
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
249 WS_OVERLAPPEDWINDOW| WS_SIZEBOX,
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
250 rd.left,
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
251 rd.top,
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
252 rd.right - rd.left,
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
253 rd.bottom - rd.top,
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
254 NULL,
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
255 NULL,
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
256 hInstance,
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
257 NULL);
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
258 wc.hbrBackground = CreateSolidBrush(RGB(0,0,0));
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
259 wc.lpszClassName = "MPlayer - Fullscreen";
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
260 RegisterClass(&wc);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
261 hWndFS = CreateWindow("MPlayer - Fullscreen","MPlayer VIDIX Fullscreen",WS_POPUP,0,0,vo_screenwidth,vo_screenheight,hWnd,NULL,hInstance,NULL);
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
262
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
263
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
264
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
265
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
266
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
267 }
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
268 ShowWindow(hWnd,SW_SHOW);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
269 if(vo_fs)ShowWindow(hWndFS,SW_SHOW);
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
270
26755
46f0b4d34fa1 cosmetics: Remove useless parentheses from from return statements.
diego
parents: 25216
diff changeset
271 return 0;
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
272 }
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
273
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
274 static void check_events(void){
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
275 MSG msg;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
276 while (PeekMessage(&msg, NULL, 0, 0,PM_REMOVE))
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
277 {
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
278 TranslateMessage(&msg);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
279 DispatchMessage(&msg);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
280 }
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
281 }
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
282
36517
5d3f93051de9 Remove empty draw_slice and draw_frame stubs.
reimar
parents: 33305
diff changeset
283 /* draw_osd, flip_page, draw_slice should be
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
284 overwritten with vidix functions (vosub_vidix.c) */
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
285 static void draw_osd(void){
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
286 mp_msg(MSGT_VO, MSGL_FATAL, "[winvidix] error: didn't use vidix draw_osd!\n");
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
287 return;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
288 }
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
289
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
290 static void flip_page(void){
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
291 mp_msg(MSGT_VO, MSGL_FATAL, "[winvidix] error: didn't use vidix flip_page!\n");
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
292 return;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
293 }
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
294
16171
fd51fd1ff231 Fix the return types of all (six) libvo API functions. Used to be uint32_t, but
ivo
parents: 15822
diff changeset
295 static int draw_slice(uint8_t *src[], int stride[],int w, int h, int x, int y){
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
296 mp_msg(MSGT_VO, MSGL_FATAL, "[winvidix] error: didn't use vidix draw_slice!\n");
26755
46f0b4d34fa1 cosmetics: Remove useless parentheses from from return statements.
diego
parents: 25216
diff changeset
297 return -1;
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
298 }
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
299
16171
fd51fd1ff231 Fix the return types of all (six) libvo API functions. Used to be uint32_t, but
ivo
parents: 15822
diff changeset
300 static int query_format(uint32_t format){
26755
46f0b4d34fa1 cosmetics: Remove useless parentheses from from return statements.
diego
parents: 25216
diff changeset
301 return vidix_query_fourcc(format);
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
302 }
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
303
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
304 static void uninit(void){
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
305 DestroyWindow(hWndFS);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
306 DestroyWindow(hWnd);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
307 if ( !vo_config_count ) return;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
308 vidix_term();
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
309
32537
8fa2f43cb760 Remove most of the NULL pointer check before free all over the code
cboesch
parents: 32336
diff changeset
310 free(vidix_name);
8fa2f43cb760 Remove most of the NULL pointer check before free all over the code
cboesch
parents: 32336
diff changeset
311 vidix_name = NULL;
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
312 }
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
313
16171
fd51fd1ff231 Fix the return types of all (six) libvo API functions. Used to be uint32_t, but
ivo
parents: 15822
diff changeset
314 static int preinit(const char *arg){
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
315 if (arg)
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
316 vidix_name = strdup(arg);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
317 else
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
318 {
11462
2e367138d4b5 message expanded with hint to use -v option
gabucino
parents: 10979
diff changeset
319 mp_msg(MSGT_VO, MSGL_INFO, "No vidix driver name provided, probing available ones (-v option for details)!\n");
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
320 vidix_name = NULL;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
321 }
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
322
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
323 if (vidix_preinit(vidix_name, &video_out_winvidix) != 0)
26755
46f0b4d34fa1 cosmetics: Remove useless parentheses from from return statements.
diego
parents: 25216
diff changeset
324 return 1;
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
325
26755
46f0b4d34fa1 cosmetics: Remove useless parentheses from from return statements.
diego
parents: 25216
diff changeset
326 return 0;
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
327 }
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
328
33305
ddb45e9443ec Remove the variable arguments from the libvo control() functions.
iive
parents: 33301
diff changeset
329 static int control(uint32_t request, void *data){
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
330 switch (request) {
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
331 case VOCTRL_FULLSCREEN:
29263
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
332 if(!vo_fs){vo_fs=1;ShowWindow(hWndFS,SW_SHOW);SetForegroundWindow(hWndFS);}
0f1b5b68af32 whitespace cosmetics: Remove all trailing whitespace.
diego
parents: 28446
diff changeset
333 else {vo_fs=0; ShowWindow(hWndFS,SW_HIDE);}
10979
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
334 break;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
335 case VOCTRL_QUERY_FORMAT:
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
336 return query_format(*((uint32_t*)data));
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
337 }
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
338 return vidix_control(request, data);
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
339 // return VO_NOTIMPL;
ea4426db0db5 new vidix vo modules for textmode console and windows
faust3
parents:
diff changeset
340 }