[MPlayer-dev-eng] [PATCH] decrease avi-fix verbosity
Oded Shimon
ods15 at ods15.dyndns.org
Mon Aug 15 05:29:03 CEST 2005
avi-fix prints an insane amount of boring information (a printf for EACH
invalid byte!!)... the printf's() alone are apperantely what slow down
avi-fix greatly... Is anyone against this patch? I'll commit in 2 days...
- ods15
-------------- next part --------------
Index: TOOLS/avi-fix.c
===================================================================
RCS file: /cvsroot/mplayer/main/TOOLS/avi-fix.c,v
retrieving revision 1.1
diff -u -r1.1 avi-fix.c
--- TOOLS/avi-fix.c 5 Feb 2004 22:37:43 -0000 1.1
+++ TOOLS/avi-fix.c 15 Aug 2005 03:26:09 -0000
@@ -2,6 +2,13 @@
// simple tool to fix chunk sizes in a RIFF AVI file
// it doesn't check/fix index, use mencoder -forceidx -oac copy -ovc copy to fix index!
+#include "../config.h"
+#ifdef MP_DEBUG
+#define mp_debug(...) printf(__VA_ARGS__)
+#else
+#define mp_debug(...)
+#endif
+
#include <stdio.h>
#include <stdlib.h>
//#include <string.h>
@@ -59,17 +66,17 @@
// if(!lastgood && feof(f)) break;
id=(id<<8)|fgetc(f);
// lastgood=ftell(f);
- printf("%08X: %c%c%c%c\n",(int)ftell(f)-4,xx(id>>24),xx(id>>16),xx(id>>8),xx(id));
+ mp_debug("%08X: %c%c%c%c\n",(int)ftell(f)-4,xx(id>>24),xx(id>>16),xx(id>>8),xx(id));
switch(id){
case FCC('R','I','F','F'):
fread(&len,4,1,f); // filesize
id=getid(f); // AVI
- printf("RIFF header, filesize=0x%X format=%c%c%c%c\n",len,xx(id>>24),xx(id>>16),xx(id>>8),xx(id));
+ mp_debug("RIFF header, filesize=0x%X format=%c%c%c%c\n",len,xx(id>>24),xx(id>>16),xx(id>>8),xx(id));
break;
case FCC('L','I','S','T'):
fread(&len,4,1,f); // size
id=getid(f); // AVI
- printf("LIST size=0x%X format=%c%c%c%c\n",len,xx(id>>24),xx(id>>16),xx(id>>8),xx(id));
+ mp_debug("LIST size=0x%X format=%c%c%c%c\n",len,xx(id>>24),xx(id>>16),xx(id>>8),xx(id));
//case FCC('h','d','r','l'):
//case FCC('s','t','r','l'):
//case FCC('o','d','m','l'):
@@ -106,23 +113,23 @@
// fix last chunk's size field:
fseek(f,fixat,SEEK_SET);
len=lastgood-fixat-8;
- printf("Correct len to 0x%X\n",len);
+ mp_debug("Correct len to 0x%X\n",len);
fwrite(&len,4,1,f);
fseek(f,lastgood,SEEK_SET);
fixat=0;
}
fread(&len,4,1,f); // size
- printf("ID ok, chunk len=0x%X\n",len);
+ mp_debug("ID ok, chunk len=0x%X\n",len);
len+=len&1; // align at 2
fseek(f,len,SEEK_CUR); // skip data
break;
default:
if(!lastgood){
++offset;
- printf("invalid ID, trying %d byte offset\n",offset);
+ mp_debug("invalid ID, trying %d byte offset\n",offset);
goto faszom; // try again @ next post
}
- printf("invalid ID, parsing next chunk's data at 0x%X\n",lastgood);
+ mp_debug("invalid ID, parsing next chunk's data at 0x%X\n",lastgood);
fseek(f,lastgood,SEEK_SET);
fixat=lastgood;
lastgood=0;
More information about the MPlayer-dev-eng
mailing list