annotate libvo/aspect.c @ 19619:a83e5b8d2e63

Patch from Karolina Lindqvist <karolina.lindqvist@kramnet.se> "There is a bug in the zoran -vo zr driver, that makes the output garbled always. It also probably affects the zrmjpeg filter. This patch takes care of the problem." Patch tested and OK. And 10l to me, because this bug probably has existed for a looong time.
author rik
date Fri, 01 Sep 2006 18:49:40 +0000
parents a107276371a8
children dd41a1fc9000
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2053
720ca9249e4e Monitor aspect stuff.
atmos4
parents:
diff changeset
1 /* Stuff for correct aspect scaling. */
2249
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
2 #include "aspect.h"
11125
d9478c8e5ffe fix aspect hack
attila
parents: 11000
diff changeset
3 #include "geometry.h"
18234
a107276371a8 Part 5 and final of otvos attila's oattila AT chello-hu mp_msg changes, with lots of corrections
reynaldo
parents: 18105
diff changeset
4 //#ifndef ASPECT_TEST
13787
e047e70a9767 Handle "xxx.h" vs "../xxx.h" include paths in a consistent way.
diego
parents: 11125
diff changeset
5 #include "mp_msg.h"
18234
a107276371a8 Part 5 and final of otvos attila's oattila AT chello-hu mp_msg changes, with lots of corrections
reynaldo
parents: 18105
diff changeset
6 //#endif
2249
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
7
2250
d7923c09dd46 Eeeh :) time to sleep!
atmos4
parents: 2249
diff changeset
8 //#define ASPECT_DEBUG
2071
7f27b212e07b Add debug printfs to aspect(), add aspect() usage to vo_sdl.
atmos4
parents: 2058
diff changeset
9
6087
8be92a9b30a4 Fix a bug in the aspect coden (roudning at wrong point) and allow donwscaling in second pass.
atmos4
parents: 2250
diff changeset
10 #if defined(ASPECT_DEBUG) || defined(ASPECT_TEST)
2071
7f27b212e07b Add debug printfs to aspect(), add aspect() usage to vo_sdl.
atmos4
parents: 2058
diff changeset
11 #include <stdio.h>
7f27b212e07b Add debug printfs to aspect(), add aspect() usage to vo_sdl.
atmos4
parents: 2058
diff changeset
12 #endif
2053
720ca9249e4e Monitor aspect stuff.
atmos4
parents:
diff changeset
13
6307
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6087
diff changeset
14 int vo_panscan_x = 0;
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6087
diff changeset
15 int vo_panscan_y = 0;
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6087
diff changeset
16 float vo_panscan_amount = 0;
16607
971ff1108066 Add -panscanrange option
reimar
parents: 13787
diff changeset
17 float vo_panscanrange = 1.0;
6307
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6087
diff changeset
18
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6087
diff changeset
19 #include "video_out.h"
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6087
diff changeset
20
2053
720ca9249e4e Monitor aspect stuff.
atmos4
parents:
diff changeset
21 float monitor_aspect=4.0/3.0;
18105
954eac69b532 new monitorpixelaspect option, esp. useful for xinerama setups with upcoming patch
reimar
parents: 16607
diff changeset
22 float monitor_pixel_aspect=0;
10907
d4ec1e1c8dc8 make aspect recognize -noaspect
attila
parents: 8936
diff changeset
23 extern float movie_aspect;
2053
720ca9249e4e Monitor aspect stuff.
atmos4
parents:
diff changeset
24
2249
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
25 static struct {
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
26 int orgw; // real width
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
27 int orgh; // real height
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
28 int prew; // prescaled width
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
29 int preh; // prescaled height
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
30 int scrw; // horizontal resolution
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
31 int scrh; // vertical resolution
6307
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6087
diff changeset
32 float asp;
2249
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
33 } aspdat;
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
34
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
35 void aspect_save_orig(int orgw, int orgh){
8936
7c28736ebf2c debug++
atmos4
parents: 6382
diff changeset
36 #ifdef ASPECT_DEBUG
7c28736ebf2c debug++
atmos4
parents: 6382
diff changeset
37 printf("aspect_save_orig %dx%d \n",orgw,orgh);
7c28736ebf2c debug++
atmos4
parents: 6382
diff changeset
38 #endif
2249
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
39 aspdat.orgw = orgw;
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
40 aspdat.orgh = orgh;
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
41 }
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
42
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
43 void aspect_save_prescale(int prew, int preh){
8936
7c28736ebf2c debug++
atmos4
parents: 6382
diff changeset
44 #ifdef ASPECT_DEBUG
7c28736ebf2c debug++
atmos4
parents: 6382
diff changeset
45 printf("aspect_save_prescale %dx%d \n",prew,preh);
7c28736ebf2c debug++
atmos4
parents: 6382
diff changeset
46 #endif
2249
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
47 aspdat.prew = prew;
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
48 aspdat.preh = preh;
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
49 }
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
50
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
51 void aspect_save_screenres(int scrw, int scrh){
8936
7c28736ebf2c debug++
atmos4
parents: 6382
diff changeset
52 #ifdef ASPECT_DEBUG
7c28736ebf2c debug++
atmos4
parents: 6382
diff changeset
53 printf("aspect_save_screenres %dx%d \n",scrw,scrh);
7c28736ebf2c debug++
atmos4
parents: 6382
diff changeset
54 #endif
2249
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
55 aspdat.scrw = scrw;
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
56 aspdat.scrh = scrh;
18105
954eac69b532 new monitorpixelaspect option, esp. useful for xinerama setups with upcoming patch
reimar
parents: 16607
diff changeset
57 if (monitor_pixel_aspect)
954eac69b532 new monitorpixelaspect option, esp. useful for xinerama setups with upcoming patch
reimar
parents: 16607
diff changeset
58 monitor_aspect = monitor_pixel_aspect * scrw / scrh;
2249
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
59 }
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
60
2053
720ca9249e4e Monitor aspect stuff.
atmos4
parents:
diff changeset
61 /* aspect is called with the source resolution and the
720ca9249e4e Monitor aspect stuff.
atmos4
parents:
diff changeset
62 * resolution, that the scaled image should fit into
720ca9249e4e Monitor aspect stuff.
atmos4
parents:
diff changeset
63 */
720ca9249e4e Monitor aspect stuff.
atmos4
parents:
diff changeset
64
2249
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
65 void aspect(int *srcw, int *srch, int zoom){
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
66 int tmpw;
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
67
11125
d9478c8e5ffe fix aspect hack
attila
parents: 11000
diff changeset
68 if( !zoom && geometry_wh_changed ) {
10918
d2dc9562422e temporary fix for attilas 10l, until better solution is found
atmos4
parents: 10907
diff changeset
69 #ifdef ASPECT_DEBUG
d2dc9562422e temporary fix for attilas 10l, until better solution is found
atmos4
parents: 10907
diff changeset
70 printf("aspect(0) no aspect forced!\n");
d2dc9562422e temporary fix for attilas 10l, until better solution is found
atmos4
parents: 10907
diff changeset
71 #endif
11000
6e35326c742f many small typo and grammar fixes
gabucino
parents: 10918
diff changeset
72 return; // the user doesn't want to fix aspect
10918
d2dc9562422e temporary fix for attilas 10l, until better solution is found
atmos4
parents: 10907
diff changeset
73 }
11125
d9478c8e5ffe fix aspect hack
attila
parents: 11000
diff changeset
74
2071
7f27b212e07b Add debug printfs to aspect(), add aspect() usage to vo_sdl.
atmos4
parents: 2058
diff changeset
75 #ifdef ASPECT_DEBUG
8936
7c28736ebf2c debug++
atmos4
parents: 6382
diff changeset
76 printf("aspect(0) fitin: %dx%d zoom: %d screenaspect: %.2f\n",aspdat.scrw,aspdat.scrh,
7c28736ebf2c debug++
atmos4
parents: 6382
diff changeset
77 zoom,monitor_aspect);
2249
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
78 printf("aspect(1) wh: %dx%d (org: %dx%d)\n",*srcw,*srch,aspdat.prew,aspdat.preh);
2071
7f27b212e07b Add debug printfs to aspect(), add aspect() usage to vo_sdl.
atmos4
parents: 2058
diff changeset
79 #endif
2249
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
80 if(zoom){
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
81 *srcw = aspdat.scrw;
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
82 *srch = (int)(((float)aspdat.scrw / (float)aspdat.prew * (float)aspdat.preh)
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
83 * ((float)aspdat.scrh / ((float)aspdat.scrw / monitor_aspect)));
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
84 }else{
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
85 *srcw = aspdat.prew;
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
86 *srch = (int)((float)aspdat.preh
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
87 * ((float)aspdat.scrh / ((float)aspdat.scrw / monitor_aspect)));
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
88 }
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
89 *srch+= *srch%2; // round
2071
7f27b212e07b Add debug printfs to aspect(), add aspect() usage to vo_sdl.
atmos4
parents: 2058
diff changeset
90 #ifdef ASPECT_DEBUG
2249
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
91 printf("aspect(2) wh: %dx%d (org: %dx%d)\n",*srcw,*srch,aspdat.prew,aspdat.preh);
2071
7f27b212e07b Add debug printfs to aspect(), add aspect() usage to vo_sdl.
atmos4
parents: 2058
diff changeset
92 #endif
2249
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
93 if(*srch>aspdat.scrh || *srch<aspdat.orgh){
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
94 if(zoom)
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
95 tmpw = (int)(((float)aspdat.scrh / (float)aspdat.preh * (float)aspdat.prew)
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
96 * ((float)aspdat.scrw / ((float)aspdat.scrh / (1.0/monitor_aspect))));
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
97 else
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
98 tmpw = (int)((float)aspdat.prew
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
99 * ((float)aspdat.scrw / ((float)aspdat.scrh / (1.0/monitor_aspect))));
6087
8be92a9b30a4 Fix a bug in the aspect coden (roudning at wrong point) and allow donwscaling in second pass.
atmos4
parents: 2250
diff changeset
100 tmpw+= tmpw%2; // round
8be92a9b30a4 Fix a bug in the aspect coden (roudning at wrong point) and allow donwscaling in second pass.
atmos4
parents: 2250
diff changeset
101 if(tmpw<=aspdat.scrw /*&& tmpw>=aspdat.orgw*/){
2249
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
102 *srch = zoom?aspdat.scrh:aspdat.preh;
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
103 *srcw = tmpw;
6087
8be92a9b30a4 Fix a bug in the aspect coden (roudning at wrong point) and allow donwscaling in second pass.
atmos4
parents: 2250
diff changeset
104 }else{
8be92a9b30a4 Fix a bug in the aspect coden (roudning at wrong point) and allow donwscaling in second pass.
atmos4
parents: 2250
diff changeset
105 #ifndef ASPECT_TEST
8be92a9b30a4 Fix a bug in the aspect coden (roudning at wrong point) and allow donwscaling in second pass.
atmos4
parents: 2250
diff changeset
106 mp_msg(MSGT_VO,MSGL_WARN,"aspect: Warning: no suitable new res found!\n");
8be92a9b30a4 Fix a bug in the aspect coden (roudning at wrong point) and allow donwscaling in second pass.
atmos4
parents: 2250
diff changeset
107 #else
18234
a107276371a8 Part 5 and final of otvos attila's oattila AT chello-hu mp_msg changes, with lots of corrections
reynaldo
parents: 18105
diff changeset
108 mp_msg(MSGT_VO,MSGL_WARN,"error: no new size found that fits into res!\n");
6087
8be92a9b30a4 Fix a bug in the aspect coden (roudning at wrong point) and allow donwscaling in second pass.
atmos4
parents: 2250
diff changeset
109 #endif
2213
a98d5300f5e9 Add downscaling as a last resort.
atmos4
parents: 2071
diff changeset
110 }
2053
720ca9249e4e Monitor aspect stuff.
atmos4
parents:
diff changeset
111 }
6307
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6087
diff changeset
112 aspdat.asp=*srcw / (float)*srch;
2071
7f27b212e07b Add debug printfs to aspect(), add aspect() usage to vo_sdl.
atmos4
parents: 2058
diff changeset
113 #ifdef ASPECT_DEBUG
2249
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2213
diff changeset
114 printf("aspect(3) wh: %dx%d (org: %dx%d)\n",*srcw,*srch,aspdat.prew,aspdat.preh);
2071
7f27b212e07b Add debug printfs to aspect(), add aspect() usage to vo_sdl.
atmos4
parents: 2058
diff changeset
115 #endif
2053
720ca9249e4e Monitor aspect stuff.
atmos4
parents:
diff changeset
116 }
720ca9249e4e Monitor aspect stuff.
atmos4
parents:
diff changeset
117
6307
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6087
diff changeset
118 void panscan_init( void )
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6087
diff changeset
119 {
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6087
diff changeset
120 vo_panscan_x=0;
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6087
diff changeset
121 vo_panscan_y=0;
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6087
diff changeset
122 vo_panscan_amount=0.0f;
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6087
diff changeset
123 }
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6087
diff changeset
124
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6087
diff changeset
125 void panscan_calc( void )
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6087
diff changeset
126 {
6382
86d5fc5b54e2 fix panscan support and add Jesper Svennevid's <mplayer@svennevid.net> patch
pontscho
parents: 6335
diff changeset
127 int fwidth,fheight;
86d5fc5b54e2 fix panscan support and add Jesper Svennevid's <mplayer@svennevid.net> patch
pontscho
parents: 6335
diff changeset
128 int vo_panscan_area;
86d5fc5b54e2 fix panscan support and add Jesper Svennevid's <mplayer@svennevid.net> patch
pontscho
parents: 6335
diff changeset
129
16607
971ff1108066 Add -panscanrange option
reimar
parents: 13787
diff changeset
130 if (vo_panscanrange > 0) {
6382
86d5fc5b54e2 fix panscan support and add Jesper Svennevid's <mplayer@svennevid.net> patch
pontscho
parents: 6335
diff changeset
131 aspect(&fwidth,&fheight,A_ZOOM);
86d5fc5b54e2 fix panscan support and add Jesper Svennevid's <mplayer@svennevid.net> patch
pontscho
parents: 6335
diff changeset
132 vo_panscan_area = (aspdat.scrh-fheight);
16607
971ff1108066 Add -panscanrange option
reimar
parents: 13787
diff changeset
133 vo_panscan_area *= vo_panscanrange;
971ff1108066 Add -panscanrange option
reimar
parents: 13787
diff changeset
134 } else
971ff1108066 Add -panscanrange option
reimar
parents: 13787
diff changeset
135 vo_panscan_area = -vo_panscanrange * aspdat.scrh;
6382
86d5fc5b54e2 fix panscan support and add Jesper Svennevid's <mplayer@svennevid.net> patch
pontscho
parents: 6335
diff changeset
136
6307
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6087
diff changeset
137 vo_panscan_amount = vo_fs ? vo_panscan : 0;
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6087
diff changeset
138 vo_panscan_x = vo_panscan_area * vo_panscan_amount * aspdat.asp;
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6087
diff changeset
139 vo_panscan_y = vo_panscan_area * vo_panscan_amount;
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6087
diff changeset
140 }
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 6087
diff changeset
141