[PATCH] Corrects original width/height calculations to be =

Joseph Tulou brezhoneg1 at yahoo.fr
Fri Feb 13 14:59:02 CET 2009


consistent with other part of vlc (patch 1/3)=0A=
=0A=
---=0A=
 src/video_output/vout_pictures.c |   26 +++++++++++++++++---------=0A=
 1 files changed, 17 insertions(+), 9 deletions(-)=0A=
=0A=
diff --git a/src/video_output/vout_pictures.c =
b/src/video_output/vout_pictures.c=0A=
index 3275aac..e4faa10 100644=0A=
--- a/src/video_output/vout_pictures.c=0A=
+++ b/src/video_output/vout_pictures.c=0A=
@@ -473,17 +473,25 @@ void vout_PlacePicture( const vout_thread_t =
*p_vout,=0A=
         *pi_width =3D i_width;=0A=
         *pi_height =3D i_height;=0A=
     }=0A=
-    else if( i_zoom =3D=3D ZOOM_FP_FACTOR )  /* original size */=0A=
-    {=0A=
-        *pi_width =3D __MIN( i_width, p_vout->fmt_in.i_visible_width );=0A=
-        *pi_height =3D __MIN( i_height, p_vout->fmt_in.i_visible_height =
);=0A=
-    }=0A=
     else =0A=
     {=0A=
-        *pi_width =3D =0A=
-             p_vout->fmt_in.i_visible_width * i_zoom / ZOOM_FP_FACTOR;=0A=
-        *pi_height =3D=0A=
-             p_vout->fmt_in.i_visible_height * i_zoom / ZOOM_FP_FACTOR;=0A=
+        unsigned int i_original_width, i_original_height;=0A=
+=0A=
+        if( p_vout->fmt_in.i_sar_num >=3D p_vout->fmt_in.i_sar_den )=0A=
+        {=0A=
+            i_original_width =3D p_vout->fmt_in.i_visible_width *=0A=
+                               p_vout->fmt_in.i_sar_num / =
p_vout->fmt_in.i_sar_den;=0A=
+            i_original_height =3D  p_vout->fmt_in.i_visible_height;=0A=
+        }=0A=
+        else=0A=
+        {=0A=
+            i_original_width =3D  p_vout->fmt_in.i_visible_width;=0A=
+            i_original_height =3D p_vout->fmt_in.i_visible_height *=0A=
+                                p_vout->fmt_in.i_sar_den / =
p_vout->fmt_in.i_sar_num;=0A=
+        }=0A=
+       =0A=
+        *pi_width =3D i_original_width * i_zoom / ZOOM_FP_FACTOR ;=0A=
+        *pi_height =3D i_original_height * i_zoom / ZOOM_FP_FACTOR ;=0A=
     }=0A=
 =0A=
      int64_t i_scaled_width =3D p_vout->fmt_in.i_visible_width * =
(int64_t)p_vout->fmt_in.i_sar_num *=0A=
-- =0A=
1.5.2.5=0A=
=0A=

------=_NextPart_000_0001_01C98DED.D9097110
Content-Type: application/octet-stream;
	name="0002-Corrects-a-Windows-limitation-zooming-cannot-exceed.patch"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
	filename="0002-Corrects-a-Windows-limitation-zooming-cannot-exceed.patch"



More information about the vlc-devel mailing list