diff options
author | atmos4 <atmos4@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2001-10-03 14:53:15 +0000 |
---|---|---|
committer | atmos4 <atmos4@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2001-10-03 14:53:15 +0000 |
commit | 5a2e880711e69b60d53f2b57909361a88cca8178 (patch) | |
tree | eb1ea6d063a9efc26ef46144739edbda5f2db1b2 /libvo/vo_xv.c | |
parent | abb7153e942b7e7324d8d6d81dd696a366ab944c (diff) | |
download | mpv-5a2e880711e69b60d53f2b57909361a88cca8178.tar.bz2 mpv-5a2e880711e69b60d53f2b57909361a88cca8178.tar.xz |
Use aspect()
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@2055 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libvo/vo_xv.c')
-rw-r--r-- | libvo/vo_xv.c | 26 |
1 files changed, 12 insertions, 14 deletions
diff --git a/libvo/vo_xv.c b/libvo/vo_xv.c index f2b5f7753f..62560c0be9 100644 --- a/libvo/vo_xv.c +++ b/libvo/vo_xv.c @@ -36,6 +36,7 @@ LIBVO_EXTERN(xv) #include "fastmemcpy.h" #include "sub.h" +#include "aspect.h" static vo_info_t vo_info = { @@ -120,6 +121,7 @@ static void draw_alpha_null(int x0,int y0, int w,int h, unsigned char* src, unsi static uint32_t init(uint32_t width, uint32_t height, uint32_t d_width, uint32_t d_height, uint32_t flags, char *title, uint32_t format) { // int screen; +// int myx,myy; char *hello = (title == NULL) ? "Xv render" : title; // char *name = ":0.0"; XSizeHints hint; @@ -158,23 +160,19 @@ static uint32_t init(uint32_t width, uint32_t height, uint32_t d_width, uint32_t { hint.width=vo_screenwidth; hint.height=vo_screenheight; +#ifdef X11_FULLSCREEN /* this code replaces X11_FULLSCREEN hack in mplayer.c - * with libvo2 this should be unified among vo plugins + * aspect() is available through aspect.h for all vos. * besides zooming should only be done with -zoom, * but I leave the old -fs behaviour so users don't get * irritated for now (and send lots o' mails ;) ::atmos */ -#ifdef X11_FULLSCREEN - d_height=(int)((float)vo_screenwidth/(float)dwidth*(float)dheight); - d_height+=d_height%2; // round - d_width=vo_screenwidth; - if(dheight>vo_screenheight){ - d_width=(int)((float)vo_screenheight/(float)dheight*(float)dwidth); - d_width+=d_width%2; // round - d_height=vo_screenheight; + { + rect_t newres = aspect(d_width,d_height,vo_screenwidth,vo_screenheight); + dwidth=d_width=newres.w; dheight=d_height=newres.h; + //myx=newres.x; myy=newres.y; } - dwidth=d_width; dheight=d_height; #endif } @@ -288,12 +286,12 @@ static uint32_t init(uint32_t width, uint32_t height, uint32_t d_width, uint32_t if ( mFullscreen ) { - drwX=( vo_screenwidth - (dwidth > vo_screenwidth?vo_screenwidth:dwidth) ) / 2; + drwX=( vo_screenwidth - (dwidth > vo_screenwidth?vo_screenwidth:dwidth) ) / 2; /* =myx; */ drwcX+=drwX; - drwY=( vo_screenheight - (dheight > vo_screenheight?vo_screenheight:dheight) ) / 2; + drwY=( vo_screenheight - (dheight > vo_screenheight?vo_screenheight:dheight) ) / 2; /* =myy; */ drwcY+=drwY; - drwWidth=(dwidth > vo_screenwidth?vo_screenwidth:dwidth); - drwHeight=(dheight > vo_screenheight?vo_screenheight:dheight); + drwWidth=(dwidth > vo_screenwidth?vo_screenwidth:dwidth); /* =dwidth */ + drwHeight=(dheight > vo_screenheight?vo_screenheight:dheight); /* =dheight */ printf( "[xv-fs] dcx: %d dcy: %d dx: %d dy: %d dw: %d dh: %d\n",drwcX,drwcY,drwX,drwY,drwWidth,drwHeight ); } #ifdef HAVE_NEW_GUI |