[Mplayer-cvslog] CVS: main dll_init.c,1.20,1.21 dec_video.c,1.1,1.2
Arpi of Ize
arpi at mplayer.dev.hu
Sun Jul 8 19:20:23 CEST 2001
Update of /cvsroot/mplayer/main
In directory mplayer:/var/tmp.root/cvs-serv32613
Modified Files:
dll_init.c dec_video.c
Log Message:
VfwEx support
Index: dll_init.c
===================================================================
RCS file: /cvsroot/mplayer/main/dll_init.c,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- dll_init.c 11 May 2001 02:05:36 -0000 1.20
+++ dll_init.c 8 Jul 2001 17:20:21 -0000 1.21
@@ -145,7 +145,7 @@
-int init_video_codec(sh_video_t *sh_video){
+int init_video_codec(sh_video_t *sh_video,int ex){
HRESULT ret;
int yuv=0;
unsigned int outfmt=sh_video->codec->outfmt[sh_video->outfmtidx];
@@ -267,14 +267,18 @@
printf(" biSizeImage %ld\n", sh_video->o_bih.biSizeImage);
}
- ret = ICDecompressQuery(sh_video->hic, sh_video->bih, &sh_video->o_bih);
+ ret = ex ?
+ ICDecompressQueryEx(sh_video->hic, sh_video->bih, &sh_video->o_bih) :
+ ICDecompressQuery(sh_video->hic, sh_video->bih, &sh_video->o_bih);
if(ret){
printf("ICDecompressQuery failed: Error %d\n", (int)ret);
return 0;
}
if(verbose) printf("ICDecompressQuery OK\n");
- ret = ICDecompressBegin(sh_video->hic, sh_video->bih, &sh_video->o_bih);
+ ret = ex ?
+ ICDecompressBeginEx(sh_video->hic, sh_video->bih, &sh_video->o_bih) :
+ ICDecompressBegin(sh_video->hic, sh_video->bih, &sh_video->o_bih);
if(ret){
printf("ICDecompressBegin failed: Error %d\n", (int)ret);
return 0;
Index: dec_video.c
===================================================================
RCS file: /cvsroot/mplayer/main/dec_video.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- dec_video.c 8 Jul 2001 12:29:38 -0000 1.1
+++ dec_video.c 8 Jul 2001 17:20:21 -0000 1.2
@@ -30,7 +30,7 @@
extern picture_t *picture; // exported from libmpeg2/decode.c
-extern int init_video_codec(sh_video_t *sh_video);
+extern int init_video_codec(sh_video_t *sh_video,int ex);
#ifdef USE_DIRECTSHOW
#include "loader/DirectShow/DS_VideoDec.h"
@@ -77,7 +77,7 @@
switch(sh_video->codec->driver){
case 2: {
- if(!init_video_codec(sh_video)) {
+ if(!init_video_codec(sh_video,0)) {
// GUI_MSG( mplUnknowError )
// exit(1);
return 0;
@@ -85,6 +85,15 @@
if(verbose) printf("INFO: Win32 video codec init OK!\n");
break;
}
+ case 6: {
+ if(!init_video_codec(sh_video,1)) {
+// GUI_MSG( mplUnknowError )
+// exit(1);
+ return 0;
+ }
+ if(verbose) printf("INFO: Win32Ex video codec init OK!\n");
+ break;
+ }
case 4: { // Win32/DirectShow
#ifndef USE_DIRECTSHOW
fprintf(stderr,"MPlayer was compiled WITHOUT directshow support!\n");
@@ -309,6 +318,7 @@
break;
}
#endif
+ case 6:
case 2: {
HRESULT ret;
unsigned int t=GetTimer();
@@ -320,6 +330,15 @@
// sh_video->bih->biWidth = 1280;
// sh_video->o_bih.biWidth = 1280;
// ret = ICDecompress(avi_header.hic, ICDECOMPRESS_NOTKEYFRAME|(ICDECOMPRESS_HURRYUP|ICDECOMPRESS_PREROL),
+
+if(sh_video->codec->driver==6)
+ ret = ICDecompressEx(sh_video->hic,
+ ( (sh_video->ds->flags&1) ? 0 : ICDECOMPRESS_NOTKEYFRAME ) |
+ ( (drop_frame==2 && !(sh_video->ds->flags&1))?(ICDECOMPRESS_HURRYUP|ICDECOMPRESS_PREROL):0 ) ,
+ sh_video->bih, start,
+ &sh_video->o_bih,
+ drop_frame ? 0 : sh_video->our_out_buffer);
+else
ret = ICDecompress(sh_video->hic,
( (sh_video->ds->flags&1) ? 0 : ICDECOMPRESS_NOTKEYFRAME ) |
( (drop_frame==2 && !(sh_video->ds->flags&1))?(ICDECOMPRESS_HURRYUP|ICDECOMPRESS_PREROL):0 ) ,
More information about the MPlayer-cvslog
mailing list