summaryrefslogtreecommitdiffstats
path: root/libvo
diff options
context:
space:
mode:
authorpontscho <pontscho@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-06-06 07:13:57 +0000
committerpontscho <pontscho@b3059339-0415-0410-9bf9-f77b7e298cf2>2002-06-06 07:13:57 +0000
commit08b4af80fac1446b54413219173aeb2e64d8f99d (patch)
tree02d1cdc41b35f56defc6c4930b11f1acc161db47 /libvo
parent414248ded1fc5c3e32d98124548caaf4828b8407 (diff)
downloadmpv-08b4af80fac1446b54413219173aeb2e64d8f99d.tar.bz2
mpv-08b4af80fac1446b54413219173aeb2e64d8f99d.tar.xz
add mute support ( step 1 ) and fixed panscan bugs (1000l for me)
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@6312 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libvo')
-rw-r--r--libvo/mga_common.c1
-rw-r--r--libvo/vo_xmga.c6
-rw-r--r--libvo/vo_xv.c3
-rw-r--r--libvo/vo_xvidix.c4
4 files changed, 9 insertions, 5 deletions
diff --git a/libvo/mga_common.c b/libvo/mga_common.c
index bf3b61eb01..7da081f1be 100644
--- a/libvo/mga_common.c
+++ b/libvo/mga_common.c
@@ -282,6 +282,7 @@ static uint32_t control(uint32_t request, void *data, ...)
#endif
#ifdef VO_XMGA
case VOCTRL_GET_PANSCAN:
+ if ( !inited || !vo_fs ) return VO_FALSE;
return VO_TRUE;
case VOCTRL_SET_PANSCAN:
if ( vo_fs && ( vo_panscan != vo_panscan_amount ) )
diff --git a/libvo/vo_xmga.c b/libvo/vo_xmga.c
index 96e30880f4..9a1f63e3ee 100644
--- a/libvo/vo_xmga.c
+++ b/libvo/vo_xmga.c
@@ -90,6 +90,8 @@ static uint32_t drwcX,drwcY,dwidth,dheight;
static XSetWindowAttributes xWAttribs;
+static int inited=0;
+
#define VO_XMGA
#include "mga_common.c"
#undef VO_XMGA
@@ -201,8 +203,6 @@ static void flip_page(void){
vo_mga_flip_page();
}
-static int inited=0;
-
static uint32_t config( uint32_t width, uint32_t height, uint32_t d_width, uint32_t d_height, uint32_t flags, char *title, uint32_t format,const vo_tune_info_t* info)
{
char * mTitle=(title == NULL) ? "XMGA render" : title;
@@ -340,7 +340,7 @@ static uint32_t config( uint32_t width, uint32_t height, uint32_t d_width, uint3
XSync( mDisplay,False );
saver_off(mDisplay);
-
+
return 0;
}
diff --git a/libvo/vo_xv.c b/libvo/vo_xv.c
index 317941a04e..5f4eca87e6 100644
--- a/libvo/vo_xv.c
+++ b/libvo/vo_xv.c
@@ -859,10 +859,9 @@ static uint32_t control(uint32_t request, void *data, ...)
case VOCTRL_GUISUPPORT:
return VO_TRUE;
case VOCTRL_GET_PANSCAN:
+ if ( !vo_config_count || !vo_fs ) return VO_FALSE;
return VO_TRUE;
case VOCTRL_SET_PANSCAN:
-
-// if((vo_fs && (vo_panscan != vo_panscan_amount)) || (!vo_fs && vo_panscan_amount))
if ( vo_fs && ( vo_panscan != vo_panscan_amount ) )
{
panscan_calc();
diff --git a/libvo/vo_xvidix.c b/libvo/vo_xvidix.c
index c9df998db4..af6ab734d9 100644
--- a/libvo/vo_xvidix.c
+++ b/libvo/vo_xvidix.c
@@ -370,6 +370,8 @@ else
XSync(mDisplay, False);
saver_off(mDisplay); /* turning off screen saver */
+
+ vo_config_count++;
return(0);
}
@@ -430,6 +432,7 @@ static uint32_t query_format(uint32_t format)
static void uninit(void)
{
+ if ( vo_config_count ) return;
vidix_term();
saver_on(mDisplay); /* screen saver back on */
@@ -464,6 +467,7 @@ static uint32_t control(uint32_t request, void *data, ...)
vo_x11_fullscreen();
return VO_TRUE;
case VOCTRL_GET_PANSCAN:
+ if ( !vo_config_count || !vo_fs ) return VO_FALSE;
return VO_TRUE;
case VOCTRL_SET_PANSCAN:
if ( vo_fs && ( vo_panscan != vo_panscan_amount ) )