CVS: main mplayer.c,1.395,1.396 dec_video.c,1.104,1.105 dec_video.h,1.4,1.5
Update of /cvsroot/mplayer/main In directory mplayer:/var/tmp.root/cvs-serv27267/main Modified Files: mplayer.c dec_video.c dec_video.h Log Message: More correct direct rendering usage Index: mplayer.c =================================================================== RCS file: /cvsroot/mplayer/main/mplayer.c,v retrieving revision 1.395 retrieving revision 1.396 diff -u -r1.395 -r1.396 --- mplayer.c 17 Feb 2002 09:25:03 -0000 1.395 +++ mplayer.c 17 Feb 2002 12:22:00 -0000 1.396 @@ -1400,7 +1400,7 @@ */ } } - init_video_vaa(); + init_video_vaa(sh_video->disp_w); fflush(stdout); //================== MAIN: ========================== Index: dec_video.c =================================================================== RCS file: /cvsroot/mplayer/main/dec_video.c,v retrieving revision 1.104 retrieving revision 1.105 diff -u -r1.104 -r1.105 --- dec_video.c 13 Feb 2002 04:06:55 -0000 1.104 +++ dec_video.c 17 Feb 2002 12:22:00 -0000 1.105 @@ -779,14 +779,15 @@ extern int vaa_use_dr; -static int use_dr=0; +static int use_dr=0,use_dr_422=0; static bes_da_t bda; -void init_video_vaa( void ) +void init_video_vaa( unsigned width ) { memset(&bda,0,sizeof(bes_da_t)); if(vo_vaa.query_bes_da) use_dr = vo_vaa.query_bes_da(&bda) ? 0 : 1; if(!vaa_use_dr) use_dr = 0; + use_dr_422 = use_dr && bda.dest.pitch.y == 16 && (width*2+15)&~15 == width*2; } #ifdef USE_LIBVO2 @@ -939,7 +940,7 @@ { /* FIXME: WILL WORK ONLY FOR PACKED FOURCC. BUT WHAT ABOUT PLANAR? */ vmem = 0; - if(use_dr && bda.dest.pitch.y == 16) + if(use_dr_422) { vmem = bda.dga_addr + bda.offsets[0] + bda.offset.y; if(vo_doublebuffering && bda.num_frames>1) @@ -1054,7 +1055,7 @@ if(!in_size) break; /* FIXME: WILL WORK ONLY FOR PACKED FOURCC. BUT WHAT ABOUT PLANAR? */ vmem = 0; - if(use_dr && bda.dest.pitch.y == 16) + if(use_dr_422) { vmem = bda.dga_addr + bda.offsets[0] + bda.offset.y; if(vo_doublebuffering && bda.num_frames>1) Index: dec_video.h =================================================================== RCS file: /cvsroot/mplayer/main/dec_video.h,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- dec_video.h 3 Feb 2002 15:16:46 -0000 1.4 +++ dec_video.h 17 Feb 2002 12:22:00 -0000 1.5 @@ -3,7 +3,7 @@ extern int video_read_properties(sh_video_t *sh_video); extern int init_video(sh_video_t *sh_video, int *pitches); -extern void init_video_vaa( void ); +extern void init_video_vaa( unsigned width ); void uninit_video(sh_video_t *sh_video); #ifdef USE_LIBVO2
participants (1)
-
Nick Kurshev