diff dll_init.c @ 467:e53a9edbee98

fixed yuvhack
author arpi_esp
date Mon, 16 Apr 2001 01:35:44 +0000
parents 5251b0c57e39
children 434889ca2340
line wrap: on
line diff
--- a/dll_init.c	Mon Apr 16 01:26:08 2001 +0000
+++ b/dll_init.c	Mon Apr 16 01:35:44 2001 +0000
@@ -146,6 +146,7 @@
   case IMGFMT_I420:
   case IMGFMT_IYUV:
       sh_video->o_bih.biBitCount=12;
+      break;
 
 /* packed format */
   case IMGFMT_YUY2:
@@ -188,11 +189,8 @@
       sh_video->o_bih.biHeight=-sh_video->bih->biHeight; // flip image!
   }
 
-  // this looks suspicious :-)
-  if(!(outfmt == IMGFMT_YUY2 && (sh_video->codec->outflags[sh_video->outfmtidx] & CODECS_FLAG_YUVHACK))
-     && (outfmt & IMGFMT_RGB_MASK) != IMGFMT_RGB  && (outfmt & IMGFMT_BGR_MASK ) != IMGFMT_BGR) {
+  if(!(sh_video->codec->outflags[sh_video->outfmtidx] & CODECS_FLAG_YUVHACK))
 	 sh_video->o_bih.biCompression = outfmt;
-  }
 
   if(verbose) {
     printf("Starting decompression, format:\n");
@@ -246,7 +244,7 @@
     return 0;
   }
 
-  if(outfmt==IMGFMT_YUY2 && (sh_video->codec->outflags[sh_video->outfmtidx]&CODECS_FLAG_YUVHACK))
+  if(sh_video->codec->outflags[sh_video->outfmtidx] & CODECS_FLAG_YUVHACK)
     sh_video->o_bih.biCompression = mmioFOURCC('Y','U','Y','2');
 
 //  avi_header.our_in_buffer=malloc(avi_header.video.dwSuggestedBufferSize); // FIXME!!!!