[Mplayer-cvslog] CVS: main/libvo vo_directx.c,1.7,1.8
Sascha Sommer CVS
faust3 at mplayerhq.hu
Thu Dec 19 13:02:06 CET 2002
Update of /cvsroot/mplayer/main/libvo
In directory mail:/var/tmp.root/cvs-serv30604/libvo
Modified Files:
vo_directx.c
Log Message:
10l - my system is very tolerant it seems
Index: vo_directx.c
===================================================================
RCS file: /cvsroot/mplayer/main/libvo/vo_directx.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- vo_directx.c 18 Dec 2002 07:34:32 -0000 1.7
+++ vo_directx.c 19 Dec 2002 12:01:50 -0000 1.8
@@ -118,13 +118,13 @@
case IMGFMT_I420 :
case IMGFMT_IYUV :
case IMGFMT_YVU9 :
- vo_draw_alpha_yv12(w,h,src,srca,stride,((uint8_t *) image) + image_width*y0 + x0,image_width);
+ vo_draw_alpha_yv12(w,h,src,srca,stride,((uint8_t *) image) + dstride*y0 + x0,dstride);
break;
case IMGFMT_YUY2 :
- vo_draw_alpha_yuy2(w,h,src,srca,stride,((uint8_t *) image)+ 2*image_width*y0 + 2*x0 ,2*image_width);
+ vo_draw_alpha_yuy2(w,h,src,srca,stride,((uint8_t *) image)+ dstride*y0 + 2*x0 ,dstride);
break;
case IMGFMT_UYVY :
- vo_draw_alpha_yuy2(w,h,src,srca,stride,((uint8_t *) image) + 2*image_width*y0 + 2*x0 + 1,dstride);
+ vo_draw_alpha_yuy2(w,h,src,srca,stride,((uint8_t *) image) + dstride*y0 + 2*x0 + 1,dstride);
break;
case IMGFMT_RGB15:
case IMGFMT_BGR15:
@@ -1047,19 +1047,19 @@
}
if(dxresult != DD_OK)mp_msg(MSGT_VO, MSGL_ERR,"<vo_directx><ERROR>can't flip page\n");
}
+ g_lpddsBack->lpVtbl->Unlock (g_lpddsBack,NULL);
+ if(nooverlay)
+ {
+ DDBLTFX ddbltfx;
+ // ask for the "NOTEARING" option
+ memset( &ddbltfx, 0, sizeof(DDBLTFX) );
+ ddbltfx.dwSize = sizeof(DDBLTFX);
+ ddbltfx.dwDDFX = DDBLTFX_NOTEARING;
+ g_lpddsPrimary->lpVtbl->Blt(g_lpddsPrimary, &rd, g_lpddsBack, NULL, DDBLT_WAIT, &ddbltfx);
+ }
g_lpddsBack->lpVtbl->Lock(g_lpddsBack,NULL,&ddsdsf, DDLOCK_NOSYSLOCK | DDLOCK_WAIT , NULL);
- g_lpddsBack->lpVtbl->Unlock (g_lpddsBack,NULL);
dstride = ddsdsf.lPitch;
image = ddsdsf.lpSurface;
- if(nooverlay == 1)
- {
- DDBLTFX ddbltfx;
- // ask for the "NOTEARING" option
- memset( &ddbltfx, 0, sizeof(DDBLTFX) );
- ddbltfx.dwSize = sizeof(DDBLTFX);
- ddbltfx.dwDDFX = DDBLTFX_NOTEARING;
- g_lpddsPrimary->lpVtbl->Blt(g_lpddsPrimary, &rd, g_lpddsBack, NULL, DDBLT_WAIT, &ddbltfx);
- }
}
static uint32_t draw_frame(uint8_t *src[])
@@ -1241,7 +1241,6 @@
memset(&ddsdsf, 0,sizeof(DDSURFACEDESC));
ddsdsf.dwSize = sizeof (DDSURFACEDESC);
g_lpddsBack->lpVtbl->Lock(g_lpddsBack,NULL,&ddsdsf, DDLOCK_NOSYSLOCK | DDLOCK_WAIT, NULL);
- g_lpddsBack->lpVtbl->Unlock (g_lpddsBack,NULL);
dstride = ddsdsf.lPitch;
image = ddsdsf.lpSurface;
if(image_format==IMGFMT_I420||image_format==IMGFMT_IYUV)
More information about the MPlayer-cvslog
mailing list