[Mplayer-cvslog] CVS: main/libvo vo_vesa.c,1.7,1.8

Nick Kurshev nick at mplayer.dev.hu
Sat Oct 20 15:11:21 CEST 2001


Update of /cvsroot/mplayer/main/libvo
In directory mplayer:/var/tmp.root/cvs-serv12526/main/libvo

Modified Files:
	vo_vesa.c 
Log Message:
Qualitative speedup for P3 & K7 cpus

Index: vo_vesa.c
===================================================================
RCS file: /cvsroot/mplayer/main/libvo/vo_vesa.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- vo_vesa.c	20 Oct 2001 12:53:20 -0000	1.7
+++ vo_vesa.c	20 Oct 2001 13:11:10 -0000	1.8
@@ -217,13 +217,21 @@
    pixel_size = (video_mode_info.BitsPerPixel+7)/8;
    screen_line_size = video_mode_info.XResolution*pixel_size;
    image_line_size = image_width*pixel_size;
-   x_shift = x_offset*pixel_size;
-   limit = image_height+y_offset;
-   for(j=0,i=y_offset;i<limit;i++,j++)
+   if(image_width == video_mode_info.XResolution)
    {
-     offset = i*screen_line_size+x_shift;
-     image_offset = j*image_line_size;
-     __vbeCopyBlock(offset,&image[image_offset],image_line_size);
+     /* Special case for zooming */
+     __vbeCopyBlock(y_offset*screen_line_size,image,image_line_size*image_height);
+   }
+   else
+   {
+     x_shift = x_offset*pixel_size;
+     limit = image_height+y_offset;
+     for(j=0,i=y_offset;i<limit;i++,j++)
+     {
+       offset = i*screen_line_size+x_shift;
+       image_offset = j*image_line_size;
+       __vbeCopyBlock(offset,&image[image_offset],image_line_size);
+     }
    }
 }
 /* is called for yuv only */




More information about the MPlayer-cvslog mailing list