0
0
mirror of https://github.com/mpv-player/mpv.git synced 2024-09-20 12:02:23 +02:00

add vsync support for doublebuffering to vo_vesa

git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@4668 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
atmos4 2002-02-12 15:06:04 +00:00
parent 54b4b5ffe0
commit e403e9fe9c
4 changed files with 9 additions and 4 deletions

View File

@ -37,6 +37,7 @@ extern char *lirc_configfile;
#ifndef USE_LIBVO2
extern int vo_doublebuffering;
extern int vo_vsync;
extern int vo_fsmode;
extern int vo_dbpp;
/* gamma correction */
@ -248,6 +249,8 @@ static config_t mplayer_opts[]={
{"fsmode", &vo_fsmode, CONF_TYPE_INT, CONF_RANGE, 0, 15, NULL},
{"double", &vo_doublebuffering, CONF_TYPE_FLAG, 0, 0, 1, NULL},
{"nodouble", &vo_doublebuffering, CONF_TYPE_FLAG, 0, 1, 0, NULL},
{"vsync", &vo_vsync, CONF_TYPE_FLAG, 0, 0, 1, NULL},
{"novsync", &vo_vsync, CONF_TYPE_FLAG, 0, 1, 0, NULL},
{"brightness",&vo_gamma_brightness, CONF_TYPE_INT, CONF_RANGE, -1000, 1000, NULL},
{"saturation",&vo_gamma_saturation, CONF_TYPE_INT, CONF_RANGE, -1000, 1000, NULL},
{"contrast",&vo_gamma_contrast, CONF_TYPE_INT, CONF_RANGE, -1000, 1000, NULL},

View File

@ -41,6 +41,7 @@ int vo_dwidth=0;
int vo_dheight=0;
int vo_dbpp=0;
int vo_doublebuffering = 0;
int vo_vsync = 0;
int vo_fsmode = 0;
int vo_pts=0; // for hw decoding

View File

@ -177,6 +177,7 @@ extern int vo_dheight;
extern int vo_dbpp;
extern int vo_doublebuffering;
extern int vo_vsync;
extern int vo_fsmode;
extern int vo_pts;

View File

@ -114,7 +114,7 @@ static char * vbeErrToStr(int err)
static char sbuff[80];
if((err & VBE_VESA_ERROR_MASK) == VBE_VESA_ERROR_MASK)
{
sprintf(sbuff,"VESA failed = 0x4f%x",(err & VBE_VESA_ERRCODE_MASK)>>8);
sprintf(sbuff,"VESA failed = 0x4f%02x",(err & VBE_VESA_ERRCODE_MASK)>>8);
retval = sbuff;
}
else
@ -361,7 +361,7 @@ static void flip_page(void)
if(vo_doublebuffering && multi_size > 1)
{
int err;
if((err=vbeSetDisplayStart(multi_buff[multi_idx],1)) != VBE_OK)
if((err=vbeSetDisplayStart(multi_buff[multi_idx],vo_vsync)) != VBE_OK)
{
vesa_term();
PRINT_VBE_ERR("vbeSetDisplayStart",err);
@ -375,10 +375,10 @@ static void flip_page(void)
else
if(tripple_buffering)
{
vbeSetScheduledDisplayStart(multi_buffer[multi_idx],1);
vbeSetScheduledDisplayStart(multi_buff[multi_idx],vo_vsync);
multi_idx++;
if(multi_idx > 2) multi_idx = 0;
win.ptr = dga_buffer = video_base + multi_buffer[multi_idx];
win.ptr = dga_buffer = video_base + multi_buff[multi_idx];
}
*/
}