Mercurial > mplayer.hg
annotate libvo/video_out.c @ 4667:95fa3901cafc
add vsync support for doublebuffering to vo_vesa
author | atmos4 |
---|---|
date | Tue, 12 Feb 2002 15:06:04 +0000 |
parents | 88843786301e |
children | 57f053d75893 |
rev | line source |
---|---|
1 | 1 /* |
2 * video_out.c, | |
3 * | |
4 * Copyright (C) Aaron Holtzman - June 2000 | |
5 * | |
6 * mpeg2dec is free software; you can redistribute it and/or modify | |
7 * it under the terms of the GNU General Public License as published by | |
8 * the Free Software Foundation; either version 2, or (at your option) | |
9 * any later version. | |
10 * | |
11 * mpeg2dec is distributed in the hope that it will be useful, | |
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 * GNU General Public License for more details. | |
15 * | |
16 * You should have received a copy of the GNU General Public License | |
17 * along with GNU Make; see the file COPYING. If not, write to | |
18 * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. | |
19 * | |
20 */ | |
21 | |
22 #include <stdio.h> | |
23 #include <stdlib.h> | |
24 #include <string.h> | |
25 | |
26 #include <unistd.h> | |
27 #include <sys/mman.h> | |
28 | |
29 #include "config.h" | |
30 #include "video_out.h" | |
31 | |
32 #include "../linux/shmem.h" | |
33 | |
388 | 34 // currect resolution/bpp on screen: (should be autodetected by vo_init()) |
35 int vo_depthonscreen=0; | |
36 int vo_screenwidth=0; | |
37 int vo_screenheight=0; | |
38 | |
39 // requested resolution/bpp: (-x -y -bpp options) | |
40 int vo_dwidth=0; | |
41 int vo_dheight=0; | |
42 int vo_dbpp=0; | |
1149
6a0f937b52e6
- new config option -lircconfig (config file for lirc)
acki2
parents:
1130
diff
changeset
|
43 int vo_doublebuffering = 0; |
4667 | 44 int vo_vsync = 0; |
1269 | 45 int vo_fsmode = 0; |
388 | 46 |
2707 | 47 int vo_pts=0; // for hw decoding |
3201 | 48 float vo_fps=0; // for mp1e rte |
2707 | 49 |
1184 | 50 char *vo_subdevice = NULL; |
4494 | 51 int vaa_use_dr=1; |
4229 | 52 /**************************************** |
53 * GAMMA CORRECTION * | |
54 ****************************************/ | |
55 int vo_gamma_brightness=0; | |
56 int vo_gamma_saturation=0; | |
57 int vo_gamma_contrast=0; | |
58 int vo_gamma_hue=0; | |
4317 | 59 int vo_gamma_red_intensity=0; |
60 int vo_gamma_green_intensity=0; | |
61 int vo_gamma_blue_intensity=0; | |
1 | 62 // |
63 // Externally visible list of all vo drivers | |
64 // | |
65 extern vo_functions_t video_out_mga; | |
66 extern vo_functions_t video_out_xmga; | |
67 extern vo_functions_t video_out_x11; | |
68 extern vo_functions_t video_out_xv; | |
69 extern vo_functions_t video_out_gl; | |
2124 | 70 extern vo_functions_t video_out_gl2; |
12 | 71 extern vo_functions_t video_out_dga; |
38 | 72 extern vo_functions_t video_out_fsdga; |
1 | 73 extern vo_functions_t video_out_sdl; |
74 extern vo_functions_t video_out_3dfx; | |
1979
6278f566cd91
tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents:
1871
diff
changeset
|
75 extern vo_functions_t video_out_tdfxfb; |
1 | 76 extern vo_functions_t video_out_null; |
2528 | 77 //extern vo_functions_t video_out_odivx; |
4214
664984198aef
zr driver (tv-out for DC10/DC10+, iomega buz, LML33...) added - patch by Rik Snel <rsnel@cube.dyndns.org>
arpi
parents:
4169
diff
changeset
|
78 extern vo_functions_t video_out_zr; |
1 | 79 extern vo_functions_t video_out_pgm; |
80 extern vo_functions_t video_out_md5; | |
81 extern vo_functions_t video_out_syncfb; | |
225 | 82 extern vo_functions_t video_out_fbdev; |
286 | 83 extern vo_functions_t video_out_svga; |
528 | 84 extern vo_functions_t video_out_png; |
1130 | 85 extern vo_functions_t video_out_ggi; |
1511 | 86 extern vo_functions_t video_out_aa; |
1871 | 87 extern vo_functions_t video_out_mpegpes; |
4599 | 88 extern vo_functions_t video_out_yuv4mpeg; |
2645 | 89 extern vo_functions_t video_out_dxr3; |
4561 | 90 #ifdef HAVE_VESA |
2244 | 91 extern vo_functions_t video_out_vesa; |
92 #endif | |
3275
38344371432f
vo DirectFB support by Jiri Svoboda <Jiri.Svoboda@seznam.cz>
arpi
parents:
3201
diff
changeset
|
93 extern vo_functions_t video_out_directfb; |
4124 | 94 #ifdef CONFIG_VIDIX |
95 extern vo_functions_t video_out_xvidix; | |
96 #endif | |
97 | |
1 | 98 vo_functions_t* video_out_drivers[] = |
99 { | |
1179 | 100 #ifdef HAVE_XMGA |
1 | 101 &video_out_xmga, |
102 #endif | |
1179 | 103 #ifdef HAVE_MGA |
1 | 104 &video_out_mga, |
105 #endif | |
106 #ifdef HAVE_SYNCFB | |
107 &video_out_syncfb, | |
108 #endif | |
109 #ifdef HAVE_3DFX | |
110 &video_out_3dfx, | |
111 #endif | |
1979
6278f566cd91
tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents:
1871
diff
changeset
|
112 #ifdef HAVE_TDFXFB |
6278f566cd91
tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents:
1871
diff
changeset
|
113 &video_out_tdfxfb, |
6278f566cd91
tdfxfb yuv driver by Zeljko Stevanovic <zsteva@ptt.yu>
arpi
parents:
1871
diff
changeset
|
114 #endif |
1 | 115 #ifdef HAVE_XV |
116 &video_out_xv, | |
117 #endif | |
118 #ifdef HAVE_X11 | |
119 &video_out_x11, | |
120 #endif | |
121 #ifdef HAVE_GL | |
122 &video_out_gl, | |
2124 | 123 &video_out_gl2, |
1 | 124 #endif |
12 | 125 #ifdef HAVE_DGA |
126 &video_out_dga, | |
1235 | 127 // &video_out_fsdga, |
12 | 128 #endif |
1 | 129 #ifdef HAVE_SDL |
130 &video_out_sdl, | |
131 #endif | |
1235 | 132 #ifdef HAVE_GGI |
133 &video_out_ggi, | |
134 #endif | |
234 | 135 #ifdef HAVE_FBDEV |
136 &video_out_fbdev, | |
137 #endif | |
286 | 138 #ifdef HAVE_SVGALIB |
139 &video_out_svga, | |
140 #endif | |
1511 | 141 #ifdef HAVE_AA |
142 &video_out_aa, | |
143 #endif | |
2645 | 144 #ifdef HAVE_DXR3 |
145 &video_out_dxr3, | |
146 #endif | |
4214
664984198aef
zr driver (tv-out for DC10/DC10+, iomega buz, LML33...) added - patch by Rik Snel <rsnel@cube.dyndns.org>
arpi
parents:
4169
diff
changeset
|
147 #ifdef HAVE_ZR |
664984198aef
zr driver (tv-out for DC10/DC10+, iomega buz, LML33...) added - patch by Rik Snel <rsnel@cube.dyndns.org>
arpi
parents:
4169
diff
changeset
|
148 &video_out_zr, |
664984198aef
zr driver (tv-out for DC10/DC10+, iomega buz, LML33...) added - patch by Rik Snel <rsnel@cube.dyndns.org>
arpi
parents:
4169
diff
changeset
|
149 #endif |
1511 | 150 |
529 | 151 #ifdef HAVE_PNG |
152 &video_out_png, | |
153 #endif | |
1 | 154 &video_out_null, |
2528 | 155 // &video_out_odivx, |
1 | 156 &video_out_pgm, |
157 &video_out_md5, | |
1871 | 158 &video_out_mpegpes, |
4599 | 159 &video_out_yuv4mpeg, |
4561 | 160 #ifdef HAVE_VESA |
2244 | 161 &video_out_vesa, |
162 #endif | |
3275
38344371432f
vo DirectFB support by Jiri Svoboda <Jiri.Svoboda@seznam.cz>
arpi
parents:
3201
diff
changeset
|
163 #ifdef HAVE_DIRECTFB |
38344371432f
vo DirectFB support by Jiri Svoboda <Jiri.Svoboda@seznam.cz>
arpi
parents:
3201
diff
changeset
|
164 &video_out_directfb, |
38344371432f
vo DirectFB support by Jiri Svoboda <Jiri.Svoboda@seznam.cz>
arpi
parents:
3201
diff
changeset
|
165 #endif |
4169
91b50468a1a4
Fix xvidix for non-x11 systems (delayed due netloss)
atmos4
parents:
4124
diff
changeset
|
166 #if defined(CONFIG_VIDIX) && defined(HAVE_X11) |
4124 | 167 &video_out_xvidix, |
168 #endif | |
1 | 169 NULL |
170 }; |