annotate libvo/video_out.h @ 16506:1e42b8be5b7f

add back_ptr add info_frames require sync_point after headers require info packets to be between headers and frames (or you could say they are headers now) add userdata stream type
author michael
date Sat, 17 Sep 2005 19:27:39 +0000
parents 7f34acc96aa4
children e9d849bf8050
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
1 /*
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
2 * video_out.h
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
3 *
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
4 * Copyright (C) Aaron Holtzman - Aug 1999
31
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
5 * Strongly modified, most parts rewritten: A'rpi/ESP-team - 2000-2001
6781
924263b4df10 eq reworked
alex
parents: 6755
diff changeset
6 * (C) MPlayer Developers
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
7 *
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
8 */
4933
429994672d8c 're-include' possibility
nick
parents: 4811
diff changeset
9
429994672d8c 're-include' possibility
nick
parents: 4811
diff changeset
10 #ifndef __VIDEO_OUT_H
429994672d8c 're-include' possibility
nick
parents: 4811
diff changeset
11 #define __VIDEO_OUT_H 1
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
12
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
13 #include <inttypes.h>
4592
5fbfd8545c3b query_ stuff replaced by new control() - patch by David Holm
arpi
parents: 4433
diff changeset
14 #include <stdarg.h>
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
15
5294
4e64fca268e9 moved font_laod.h
arpi
parents: 5002
diff changeset
16 //#include "font_load.h"
408
b61c5c4484f8 - applied overlay patch by Jens H
atmosfear
parents: 388
diff changeset
17 #include "img_format.h"
13787
e047e70a9767 Handle "xxx.h" vs "../xxx.h" include paths in a consistent way.
diego
parents: 13091
diff changeset
18 //#include "vidix/vidix.h"
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
19
31
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
20 #define VO_EVENT_EXPOSE 1
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
21 #define VO_EVENT_RESIZE 2
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
22 #define VO_EVENT_KEYPRESS 4
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
23
7124
eca7dbad0166 finally removed query_vaa, bes_da and vo_tune_info - the obsoleted libvo api
alex
parents: 7069
diff changeset
24 /* Obsolete: VOCTRL_QUERY_VAA 1 */
6781
924263b4df10 eq reworked
alex
parents: 6755
diff changeset
25 /* does the device support the required format */
4592
5fbfd8545c3b query_ stuff replaced by new control() - patch by David Holm
arpi
parents: 4433
diff changeset
26 #define VOCTRL_QUERY_FORMAT 2
4754
ad892563d9c4 Added VOCTRL_PAUSE and VOCTRL_RESUME
mswitch
parents: 4738
diff changeset
27 /* signal a device reset seek */
4592
5fbfd8545c3b query_ stuff replaced by new control() - patch by David Holm
arpi
parents: 4433
diff changeset
28 #define VOCTRL_RESET 3
4618
09198a119e39 added voctrl_guisupport and fixed some typos
alex
parents: 4592
diff changeset
29 /* true if vo driver can use GUI created windows */
09198a119e39 added voctrl_guisupport and fixed some typos
alex
parents: 4592
diff changeset
30 #define VOCTRL_GUISUPPORT 4
7009
98bed9e12087 - add dxr3 gui support (dialogbox, etc.)
pontscho
parents: 6781
diff changeset
31 #define VOCTRL_GUI_NOWINDOW 19
4731
c8125c117807 added VOCTRL_FULLSCREEN
alex
parents: 4667
diff changeset
32 /* used to switch to fullscreen */
c8125c117807 added VOCTRL_FULLSCREEN
alex
parents: 4667
diff changeset
33 #define VOCTRL_FULLSCREEN 5
4738
77519b9ac057 Screenshot on the fly
nick
parents: 4736
diff changeset
34 #define VOCTRL_SCREENSHOT 6
4754
ad892563d9c4 Added VOCTRL_PAUSE and VOCTRL_RESUME
mswitch
parents: 4738
diff changeset
35 /* signal a device pause */
ad892563d9c4 Added VOCTRL_PAUSE and VOCTRL_RESUME
mswitch
parents: 4738
diff changeset
36 #define VOCTRL_PAUSE 7
ad892563d9c4 Added VOCTRL_PAUSE and VOCTRL_RESUME
mswitch
parents: 4738
diff changeset
37 /* start/resume playback */
ad892563d9c4 Added VOCTRL_PAUSE and VOCTRL_RESUME
mswitch
parents: 4738
diff changeset
38 #define VOCTRL_RESUME 8
4971
fa002f25631e direct rendering support
arpi
parents: 4933
diff changeset
39 /* libmpcodecs direct rendering: */
fa002f25631e direct rendering support
arpi
parents: 4933
diff changeset
40 #define VOCTRL_GET_IMAGE 9
5502
9cecf4b10a4b VOCTRL_DRAW_IMAGE added
arpi
parents: 5431
diff changeset
41 #define VOCTRL_DRAW_IMAGE 13
6110
7bea806b9c5f Improvment for spu subtitles.
albeu
parents: 5651
diff changeset
42 #define VOCTRL_SET_SPU_PALETTE 14
5002
70751bbd6404 voctls for decoding ahead
nick
parents: 4981
diff changeset
43 /* decoding ahead: */
70751bbd6404 voctls for decoding ahead
nick
parents: 4981
diff changeset
44 #define VOCTRL_GET_NUM_FRAMES 10
70751bbd6404 voctls for decoding ahead
nick
parents: 4981
diff changeset
45 #define VOCTRL_GET_FRAME_NUM 11
70751bbd6404 voctls for decoding ahead
nick
parents: 4981
diff changeset
46 #define VOCTRL_SET_FRAME_NUM 12
6308
4764574062a0 100l to .so
arpi
parents: 6307
diff changeset
47 #define VOCTRL_GET_PANSCAN 15
4764574062a0 100l to .so
arpi
parents: 6307
diff changeset
48 #define VOCTRL_SET_PANSCAN 16
6781
924263b4df10 eq reworked
alex
parents: 6755
diff changeset
49 /* equalizer controls */
924263b4df10 eq reworked
alex
parents: 6755
diff changeset
50 #define VOCTRL_SET_EQUALIZER 17
924263b4df10 eq reworked
alex
parents: 6755
diff changeset
51 #define VOCTRL_GET_EQUALIZER 18
8450
8cfc9309f0cc notice vo driver about skipped/dropped frames
arpi
parents: 8148
diff changeset
52 //#define VOCTRL_GUI_NOWINDOW 19
8cfc9309f0cc notice vo driver about skipped/dropped frames
arpi
parents: 8148
diff changeset
53 /* Frame duplication */
8cfc9309f0cc notice vo driver about skipped/dropped frames
arpi
parents: 8148
diff changeset
54 #define VOCTRL_DUPLICATE_FRAME 20
8cfc9309f0cc notice vo driver about skipped/dropped frames
arpi
parents: 8148
diff changeset
55 // ... 21
9560
ae2ce6ebc1fa Pass start slice to the vo it make dr + slice implemantation easier
albeu
parents: 8450
diff changeset
56 #define VOCTRL_START_SLICE 21
7009
98bed9e12087 - add dxr3 gui support (dialogbox, etc.)
pontscho
parents: 6781
diff changeset
57
11542
85e503ddf65f runtime 'stay-on-top' functionality
joey
parents: 10988
diff changeset
58 #define VOCTRL_ONTOP 25
13091
25f51c72eb06 added runtime toggle of root window playback
joey
parents: 12912
diff changeset
59 #define VOCTRL_ROOTWIN 26
11542
85e503ddf65f runtime 'stay-on-top' functionality
joey
parents: 10988
diff changeset
60
9569
894d02a6469e vo_xover is a new vo that should make easy to have x11 support for
albeu
parents: 9560
diff changeset
61 // Vo can be used by xover
894d02a6469e vo_xover is a new vo that should make easy to have x11 support for
albeu
parents: 9560
diff changeset
62 #define VOCTRL_XOVERLAY_SUPPORT 22
894d02a6469e vo_xover is a new vo that should make easy to have x11 support for
albeu
parents: 9560
diff changeset
63
894d02a6469e vo_xover is a new vo that should make easy to have x11 support for
albeu
parents: 9560
diff changeset
64 #define VOCTRL_XOVERLAY_SET_COLORKEY 24
894d02a6469e vo_xover is a new vo that should make easy to have x11 support for
albeu
parents: 9560
diff changeset
65 typedef struct {
894d02a6469e vo_xover is a new vo that should make easy to have x11 support for
albeu
parents: 9560
diff changeset
66 uint32_t x11; // The raw x11 color
894d02a6469e vo_xover is a new vo that should make easy to have x11 support for
albeu
parents: 9560
diff changeset
67 uint16_t r,g,b;
894d02a6469e vo_xover is a new vo that should make easy to have x11 support for
albeu
parents: 9560
diff changeset
68 } mp_colorkey_t;
894d02a6469e vo_xover is a new vo that should make easy to have x11 support for
albeu
parents: 9560
diff changeset
69
894d02a6469e vo_xover is a new vo that should make easy to have x11 support for
albeu
parents: 9560
diff changeset
70 #define VOCTRL_XOVERLAY_SET_WIN 23
894d02a6469e vo_xover is a new vo that should make easy to have x11 support for
albeu
parents: 9560
diff changeset
71 typedef struct {
894d02a6469e vo_xover is a new vo that should make easy to have x11 support for
albeu
parents: 9560
diff changeset
72 int x,y;
894d02a6469e vo_xover is a new vo that should make easy to have x11 support for
albeu
parents: 9560
diff changeset
73 int w,h;
894d02a6469e vo_xover is a new vo that should make easy to have x11 support for
albeu
parents: 9560
diff changeset
74 } mp_win_t;
6307
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6304
diff changeset
75
4592
5fbfd8545c3b query_ stuff replaced by new control() - patch by David Holm
arpi
parents: 4433
diff changeset
76 #define VO_TRUE 1
5fbfd8545c3b query_ stuff replaced by new control() - patch by David Holm
arpi
parents: 4433
diff changeset
77 #define VO_FALSE 0
5fbfd8545c3b query_ stuff replaced by new control() - patch by David Holm
arpi
parents: 4433
diff changeset
78 #define VO_ERROR -1
5fbfd8545c3b query_ stuff replaced by new control() - patch by David Holm
arpi
parents: 4433
diff changeset
79 #define VO_NOTAVAIL -2
5fbfd8545c3b query_ stuff replaced by new control() - patch by David Holm
arpi
parents: 4433
diff changeset
80 #define VO_NOTIMPL -3
5fbfd8545c3b query_ stuff replaced by new control() - patch by David Holm
arpi
parents: 4433
diff changeset
81
4736
57f053d75893 added VOFLAG_* definitions and int vo_flags
alex
parents: 4731
diff changeset
82 #define VOFLAG_FULLSCREEN 0x01
57f053d75893 added VOFLAG_* definitions and int vo_flags
alex
parents: 4731
diff changeset
83 #define VOFLAG_MODESWITCHING 0x02
57f053d75893 added VOFLAG_* definitions and int vo_flags
alex
parents: 4731
diff changeset
84 #define VOFLAG_SWSCALE 0x04
57f053d75893 added VOFLAG_* definitions and int vo_flags
alex
parents: 4731
diff changeset
85 #define VOFLAG_FLIPPING 0x08
9569
894d02a6469e vo_xover is a new vo that should make easy to have x11 support for
albeu
parents: 9560
diff changeset
86 #define VOFLAG_XOVERLAY_SUB_VO 0x10000
4736
57f053d75893 added VOFLAG_* definitions and int vo_flags
alex
parents: 4731
diff changeset
87
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
88 typedef struct vo_info_s
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
89 {
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
90 /* driver name ("Matrox Millennium G200/G400" */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
91 const char *name;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
92 /* short name (for config strings) ("mga") */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
93 const char *short_name;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
94 /* author ("Aaron Holtzman <aholtzma@ess.engr.uvic.ca>") */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
95 const char *author;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
96 /* any additional comments */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
97 const char *comment;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
98 } vo_info_t;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
99
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
100 typedef struct vo_functions_s
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
101 {
8148
5b39e79af5fe removed get_info, using the same sheme as in libmpcodecs instead
alex
parents: 8081
diff changeset
102 vo_info_t *info;
4352
ed5b85b713a3 Extensions for video accelerated architecture
nick
parents: 3201
diff changeset
103 /*
ed5b85b713a3 Extensions for video accelerated architecture
nick
parents: 3201
diff changeset
104 * Preinitializes driver (real INITIALIZATION)
ed5b85b713a3 Extensions for video accelerated architecture
nick
parents: 3201
diff changeset
105 * arg - currently it's vo_subdevice
ed5b85b713a3 Extensions for video accelerated architecture
nick
parents: 3201
diff changeset
106 * returns: zero on successful initialization, non-zero on error.
ed5b85b713a3 Extensions for video accelerated architecture
nick
parents: 3201
diff changeset
107 */
16171
fd51fd1ff231 Fix the return types of all (six) libvo API functions. Used to be uint32_t, but
ivo
parents: 13787
diff changeset
108 int (*preinit)(const char *arg);
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
109 /*
4352
ed5b85b713a3 Extensions for video accelerated architecture
nick
parents: 3201
diff changeset
110 * Initialize (means CONFIGURE) the display driver.
31
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
111 * params:
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
112 * width,height: image source size
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
113 * d_width,d_height: size of the requested window size, just a hint
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
114 * fullscreen: flag, 0=windowd 1=fullscreen, just a hint
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
115 * title: window title, if available
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
116 * format: fourcc of pixel format
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
117 * returns : zero on successful initialization, non-zero on error.
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
118 */
16171
fd51fd1ff231 Fix the return types of all (six) libvo API functions. Used to be uint32_t, but
ivo
parents: 13787
diff changeset
119 int (*config)(uint32_t width, uint32_t height, uint32_t d_width,
4433
df8e0f71cc3c new info for tuning
nick
parents: 4352
diff changeset
120 uint32_t d_height, uint32_t fullscreen, char *title,
7124
eca7dbad0166 finally removed query_vaa, bes_da and vo_tune_info - the obsoleted libvo api
alex
parents: 7069
diff changeset
121 uint32_t format);
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
122
4592
5fbfd8545c3b query_ stuff replaced by new control() - patch by David Holm
arpi
parents: 4433
diff changeset
123 /*
5fbfd8545c3b query_ stuff replaced by new control() - patch by David Holm
arpi
parents: 4433
diff changeset
124 * Control interface
5fbfd8545c3b query_ stuff replaced by new control() - patch by David Holm
arpi
parents: 4433
diff changeset
125 */
16171
fd51fd1ff231 Fix the return types of all (six) libvo API functions. Used to be uint32_t, but
ivo
parents: 13787
diff changeset
126 int (*control)(uint32_t request, void *data, ...);
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
127
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
128 /*
31
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
129 * Display a new RGB/BGR frame of the video to the screen.
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
130 * params:
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
131 * src[0] - pointer to the image
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
132 */
16171
fd51fd1ff231 Fix the return types of all (six) libvo API functions. Used to be uint32_t, but
ivo
parents: 13787
diff changeset
133 int (*draw_frame)(uint8_t *src[]);
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
134
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
135 /*
31
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
136 * Draw a planar YUV slice to the buffer:
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
137 * params:
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
138 * src[3] = source image planes (Y,U,V)
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
139 * stride[3] = source image planes line widths (in bytes)
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
140 * w,h = width*height of area to be copied (in Y pixels)
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
141 * x,y = position at the destination image (in Y pixels)
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
142 */
16171
fd51fd1ff231 Fix the return types of all (six) libvo API functions. Used to be uint32_t, but
ivo
parents: 13787
diff changeset
143 int (*draw_slice)(uint8_t *src[], int stride[], int w,int h, int x,int y);
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
144
1501
d40f2b686846 changes according to -utf8 option, draw_osd() function added
atlka
parents: 1326
diff changeset
145 /*
d40f2b686846 changes according to -utf8 option, draw_osd() function added
atlka
parents: 1326
diff changeset
146 * Draws OSD to the screen buffer
d40f2b686846 changes according to -utf8 option, draw_osd() function added
atlka
parents: 1326
diff changeset
147 */
d40f2b686846 changes according to -utf8 option, draw_osd() function added
atlka
parents: 1326
diff changeset
148 void (*draw_osd)(void);
d40f2b686846 changes according to -utf8 option, draw_osd() function added
atlka
parents: 1326
diff changeset
149
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
150 /*
31
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
151 * Blit/Flip buffer to the screen. Must be called after each frame!
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
152 */
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
153 void (*flip_page)(void);
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
154
31
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
155 /*
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
156 * This func is called after every frames to handle keyboard and
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
157 * other events. It's called in PAUSE mode too!
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
158 */
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
159 void (*check_events)(void);
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
160
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
161 /*
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
162 * Closes driver. Should restore the original state of the system.
1fc618eba830 added check_events() interface
arpi_esp
parents: 1
diff changeset
163 */
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
164 void (*uninit)(void);
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
165
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
166 } vo_functions_t;
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
167
1142
6b6c173d050f added prototype of vo_format_name
al3x
parents: 408
diff changeset
168 char *vo_format_name(int format);
1326
76478d16903d added prototype of vo_init()
arpi
parents: 1268
diff changeset
169 int vo_init(void);
76478d16903d added prototype of vo_init()
arpi
parents: 1268
diff changeset
170
7562
92188b57a062 video out driver list support (like -vc, example: -vo xmga,xv,x11,)
arpi
parents: 7539
diff changeset
171 vo_functions_t* init_best_video_out(char** vo_list);
92188b57a062 video out driver list support (like -vc, example: -vo xmga,xv,x11,)
arpi
parents: 7539
diff changeset
172 void list_video_out();
92188b57a062 video out driver list support (like -vc, example: -vo xmga,xv,x11,)
arpi
parents: 7539
diff changeset
173
1
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
174 // NULL terminated array of all drivers
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
175 extern vo_functions_t* video_out_drivers[];
3b5f5d1c5041 Initial revision
arpi_esp
parents:
diff changeset
176
4811
38a9cddd9e4d added vo_dx,vo_dy (used currently only by X based outputs)
alex
parents: 4754
diff changeset
177 extern int vo_flags;
38a9cddd9e4d added vo_dx,vo_dy (used currently only by X based outputs)
alex
parents: 4754
diff changeset
178
5511
7a24a067f0af vo_config_count now counts calls to vo->config()
arpi
parents: 5502
diff changeset
179 extern int vo_config_count;
7a24a067f0af vo_config_count now counts calls to vo->config()
arpi
parents: 5502
diff changeset
180
4618
09198a119e39 added voctrl_guisupport and fixed some typos
alex
parents: 4592
diff changeset
181 // correct resolution/bpp on screen: (should be autodetected by vo_init())
388
ccb5ebfaaeac -bpp changes
arpi_esp
parents: 218
diff changeset
182 extern int vo_depthonscreen;
ccb5ebfaaeac -bpp changes
arpi_esp
parents: 218
diff changeset
183 extern int vo_screenwidth;
ccb5ebfaaeac -bpp changes
arpi_esp
parents: 218
diff changeset
184 extern int vo_screenheight;
213
6ec8f6ab6cb1 subtitle+OSD font support
arpi_esp
parents: 31
diff changeset
185
388
ccb5ebfaaeac -bpp changes
arpi_esp
parents: 218
diff changeset
186 // requested resolution/bpp: (-x -y -bpp options)
4811
38a9cddd9e4d added vo_dx,vo_dy (used currently only by X based outputs)
alex
parents: 4754
diff changeset
187 extern int vo_dx;
38a9cddd9e4d added vo_dx,vo_dy (used currently only by X based outputs)
alex
parents: 4754
diff changeset
188 extern int vo_dy;
388
ccb5ebfaaeac -bpp changes
arpi_esp
parents: 218
diff changeset
189 extern int vo_dwidth;
ccb5ebfaaeac -bpp changes
arpi_esp
parents: 218
diff changeset
190 extern int vo_dheight;
ccb5ebfaaeac -bpp changes
arpi_esp
parents: 218
diff changeset
191 extern int vo_dbpp;
ccb5ebfaaeac -bpp changes
arpi_esp
parents: 218
diff changeset
192
7539
56ea9db91251 -nograbpointer, based on old patch by Christian Ohm <chr.ohm@gmx.net>
arpi
parents: 7435
diff changeset
193 extern int vo_grabpointer;
1268
9877eaacff9e extern vo_doublebuffering cleanup
arpi
parents: 1184
diff changeset
194 extern int vo_doublebuffering;
5431
013458752947 disabling direct rendering by default (too buggy and conflicts with osd/sub)
arpi
parents: 5294
diff changeset
195 extern int vo_directrendering;
4667
95fa3901cafc add vsync support for doublebuffering to vo_vesa
atmos4
parents: 4618
diff changeset
196 extern int vo_vsync;
4981
bfc652fc7f43 rewrite fullscreen support in some libvo driver
pontscho
parents: 4971
diff changeset
197 extern int vo_fs;
1268
9877eaacff9e extern vo_doublebuffering cleanup
arpi
parents: 1184
diff changeset
198 extern int vo_fsmode;
6304
ee65527096c2 pan&scan support with -vo xv by ?? <mplayer@svennevid.net>
arpi
parents: 6110
diff changeset
199 extern float vo_panscan;
12021
cd33d1e3b709 move refreshrate and adapter_num variables to video_out because they might be usefull for other drivers, too
faust3
parents: 11542
diff changeset
200 extern int vo_adapter_num;
cd33d1e3b709 move refreshrate and adapter_num variables to video_out because they might be usefull for other drivers, too
faust3
parents: 11542
diff changeset
201 extern int vo_refresh_rate;
12371
c000f4c23efd keepaspect and nokeepaspect are now useable by all vos
faust3
parents: 12021
diff changeset
202 extern int vo_keepaspect;
12912
1f6bb2356d18 add var vo_rootwin and -rootwin switch for mac osx
nplourde
parents: 12371
diff changeset
203 extern int vo_rootwin;
16280
7f34acc96aa4 remove extern for variables that are already in headers.
reimar
parents: 16171
diff changeset
204 extern int vo_ontop;
1268
9877eaacff9e extern vo_doublebuffering cleanup
arpi
parents: 1184
diff changeset
205
6755
a31b9f15cbff - fix audio equalizer
pontscho
parents: 6308
diff changeset
206 extern int vo_gamma_brightness;
a31b9f15cbff - fix audio equalizer
pontscho
parents: 6308
diff changeset
207 extern int vo_gamma_saturation;
a31b9f15cbff - fix audio equalizer
pontscho
parents: 6308
diff changeset
208 extern int vo_gamma_contrast;
a31b9f15cbff - fix audio equalizer
pontscho
parents: 6308
diff changeset
209 extern int vo_gamma_hue;
a31b9f15cbff - fix audio equalizer
pontscho
parents: 6308
diff changeset
210 extern int vo_gamma_red_intensity;
a31b9f15cbff - fix audio equalizer
pontscho
parents: 6308
diff changeset
211 extern int vo_gamma_green_intensity;
a31b9f15cbff - fix audio equalizer
pontscho
parents: 6308
diff changeset
212 extern int vo_gamma_blue_intensity;
a31b9f15cbff - fix audio equalizer
pontscho
parents: 6308
diff changeset
213
5651
b8d8d72776f2 fix playlist bug with gui and rewrite mousecursor show/hide code
pontscho
parents: 5511
diff changeset
214 extern int vo_mouse_timer_const;
10785
e2dcade78bc6 -nomouseinput support for vo_sdl
alex
parents: 9569
diff changeset
215 extern int vo_nomouse_input;
5651
b8d8d72776f2 fix playlist bug with gui and rewrite mousecursor show/hide code
pontscho
parents: 5511
diff changeset
216
2707
97efb75dceb8 vo_pts added
arpi
parents: 1501
diff changeset
217 extern int vo_pts;
3201
039a973b3dda Newest DXR3 patch (improved 1.0rc2) by David Holm.
atmos4
parents: 2707
diff changeset
218 extern float vo_fps;
2707
97efb75dceb8 vo_pts added
arpi
parents: 1501
diff changeset
219
1184
e8c3f89ecd96 vo_subdevice implemented
al3x
parents: 1142
diff changeset
220 extern char *vo_subdevice;
e8c3f89ecd96 vo_subdevice implemented
al3x
parents: 1142
diff changeset
221
10988
c2bff70784d5 user settable colorkey
alex
parents: 10785
diff changeset
222 extern int vo_colorkey;
c2bff70784d5 user settable colorkey
alex
parents: 10785
diff changeset
223
16280
7f34acc96aa4 remove extern for variables that are already in headers.
reimar
parents: 16171
diff changeset
224 extern int WinID;
7f34acc96aa4 remove extern for variables that are already in headers.
reimar
parents: 16171
diff changeset
225
7069
21e1ab99cb21 General Timing Formula algorithm from a scratch.
arpi
parents: 7009
diff changeset
226 #if defined(HAVE_FBDEV)||defined(HAVE_VESA)
21e1ab99cb21 General Timing Formula algorithm from a scratch.
arpi
parents: 7009
diff changeset
227
21e1ab99cb21 General Timing Formula algorithm from a scratch.
arpi
parents: 7009
diff changeset
228 typedef struct {
21e1ab99cb21 General Timing Formula algorithm from a scratch.
arpi
parents: 7009
diff changeset
229 float min;
21e1ab99cb21 General Timing Formula algorithm from a scratch.
arpi
parents: 7009
diff changeset
230 float max;
21e1ab99cb21 General Timing Formula algorithm from a scratch.
arpi
parents: 7009
diff changeset
231 } range_t;
21e1ab99cb21 General Timing Formula algorithm from a scratch.
arpi
parents: 7009
diff changeset
232
21e1ab99cb21 General Timing Formula algorithm from a scratch.
arpi
parents: 7009
diff changeset
233 extern float range_max(range_t *r);
21e1ab99cb21 General Timing Formula algorithm from a scratch.
arpi
parents: 7009
diff changeset
234 extern int in_range(range_t *r, float f);
21e1ab99cb21 General Timing Formula algorithm from a scratch.
arpi
parents: 7009
diff changeset
235 extern range_t *str2range(char *s);
21e1ab99cb21 General Timing Formula algorithm from a scratch.
arpi
parents: 7009
diff changeset
236 extern char *monitor_hfreq_str;
21e1ab99cb21 General Timing Formula algorithm from a scratch.
arpi
parents: 7009
diff changeset
237 extern char *monitor_vfreq_str;
21e1ab99cb21 General Timing Formula algorithm from a scratch.
arpi
parents: 7009
diff changeset
238 extern char *monitor_dotclock_str;
21e1ab99cb21 General Timing Formula algorithm from a scratch.
arpi
parents: 7009
diff changeset
239
21e1ab99cb21 General Timing Formula algorithm from a scratch.
arpi
parents: 7009
diff changeset
240 #endif
21e1ab99cb21 General Timing Formula algorithm from a scratch.
arpi
parents: 7009
diff changeset
241
4933
429994672d8c 're-include' possibility
nick
parents: 4811
diff changeset
242 #endif