annotate libvo/aspect.h @ 24787:02535b3216c5

Avoid text deformation and subtitles moving outside the screen in pan-and-scan mode. For this, crop amounts are passed from vo_gl as negative margins sizes. They are used to calculate aspect ratio. They are ignored when calculating subtitle positions, so subtitles will stay on screen most of the time. Based on a patch by Jindrich Makovicka [makovick gmail com].
author eugeni
date Fri, 19 Oct 2007 18:16:23 +0000
parents 3f0d00abc073
children 3baf6a2283da
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
23689
3f0d00abc073 Do not use leading underscores in multiple inclusion guards, they are reserved.
diego
parents: 6307
diff changeset
1 #ifndef ASPECT_H
3f0d00abc073 Do not use leading underscores in multiple inclusion guards, they are reserved.
diego
parents: 6307
diff changeset
2 #define ASPECT_H
2053
720ca9249e4e Monitor aspect stuff.
atmos4
parents:
diff changeset
3 /* Stuff for correct aspect scaling. */
720ca9249e4e Monitor aspect stuff.
atmos4
parents:
diff changeset
4
6307
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 2249
diff changeset
5 extern int vo_panscan_x;
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 2249
diff changeset
6 extern int vo_panscan_y;
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 2249
diff changeset
7 extern float vo_panscan_amount;
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 2249
diff changeset
8
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 2249
diff changeset
9 extern void panscan_init( void );
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 2249
diff changeset
10 extern void panscan_calc( void );
72c87b2ec779 added panscan support for xmga/xvidix
pontscho
parents: 2249
diff changeset
11
2249
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2055
diff changeset
12 void aspect_save_orig(int orgw, int orgh);
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2055
diff changeset
13
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2055
diff changeset
14 void aspect_save_prescale(int prew, int preh);
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2055
diff changeset
15
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2055
diff changeset
16 void aspect_save_screenres(int scrw, int scrh);
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2055
diff changeset
17
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2055
diff changeset
18 #define A_ZOOM 1
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2055
diff changeset
19 #define A_NOZOOM 0
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2055
diff changeset
20
48f0ac1e9d13 Update to new (cleaner, more bugfree, better) aspect api. vo_gl vo_gl2 and vo_xmga are untested!
atmos4
parents: 2055
diff changeset
21 void aspect(int *srcw, int *srch, int zoom);
2053
720ca9249e4e Monitor aspect stuff.
atmos4
parents:
diff changeset
22
720ca9249e4e Monitor aspect stuff.
atmos4
parents:
diff changeset
23 #endif
720ca9249e4e Monitor aspect stuff.
atmos4
parents:
diff changeset
24