Update of /cvsroot/mplayer/main/libvo In directory mplayer:/var/tmp.root/cvs-serv722/main/libvo Modified Files: vo_vesa.c Log Message: Configurable OSD zones Index: vo_vesa.c =================================================================== RCS file: /cvsroot/mplayer/main/libvo/vo_vesa.c,v retrieving revision 1.64 retrieving revision 1.65 diff -u -r1.64 -r1.65 --- vo_vesa.c 6 Feb 2002 20:52:14 -0000 1.64 +++ vo_vesa.c 7 Feb 2002 19:37:09 -0000 1.65 @@ -267,27 +267,58 @@ return 0; } +/* Please comment it out if you want have OSD within movie */ +#define OSD_OUTSIDE_MOVIE 1 + static void draw_alpha_32(int x0,int y0, int w,int h, unsigned char* src, unsigned char *srca, int stride) { unsigned int dstride=HAS_DGA()?video_mode_info.XResolution:dstW; +#ifndef OSD_OUTSIDE_MOVIE + if(HAS_DGA()) + { + x0 += x_offset; + y0 += y_offset; + } +#endif vo_draw_alpha_rgb32(w,h,src,srca,stride,dga_buffer+4*(y0*dstride+x0),4*dstride); } static void draw_alpha_24(int x0,int y0, int w,int h, unsigned char* src, unsigned char *srca, int stride) { unsigned int dstride=HAS_DGA()?video_mode_info.XResolution:dstW; +#ifndef OSD_OUTSIDE_MOVIE + if(HAS_DGA()) + { + x0 += x_offset; + y0 += y_offset; + } +#endif vo_draw_alpha_rgb24(w,h,src,srca,stride,dga_buffer+3*(y0*dstride+x0),3*dstride); } static void draw_alpha_16(int x0,int y0, int w,int h, unsigned char* src, unsigned char *srca, int stride) { unsigned int dstride=HAS_DGA()?video_mode_info.XResolution:dstW; +#ifndef OSD_OUTSIDE_MOVIE + if(HAS_DGA()) + { + x0 += x_offset; + y0 += y_offset; + } +#endif vo_draw_alpha_rgb16(w,h,src,srca,stride,dga_buffer+2*(y0*dstride+x0),2*dstride); } static void draw_alpha_15(int x0,int y0, int w,int h, unsigned char* src, unsigned char *srca, int stride) { unsigned int dstride=HAS_DGA()?video_mode_info.XResolution:dstW; +#ifndef OSD_OUTSIDE_MOVIE + if(HAS_DGA()) + { + x0 += x_offset; + y0 += y_offset; + } +#endif vo_draw_alpha_rgb15(w,h,src,srca,stride,dga_buffer+2*(y0*dstride+x0),2*dstride); } @@ -309,8 +340,13 @@ if(verbose > 2) printf("vo_vesa: draw_osd was called\n"); { +#ifdef OSD_OUTSIDE_MOVIE w = HAS_DGA()?video_mode_info.XResolution:dstW; h = HAS_DGA()?video_mode_info.YResolution:dstH; +#else + w = dstW; + h = dstH; +#endif if(dga_buffer) vo_draw_text(w,h,draw_alpha_fnc); } }
participants (1)
-
Nick Kurshev