summaryrefslogtreecommitdiffstats
path: root/TOOLS
diff options
context:
space:
mode:
authorods15 <ods15@b3059339-0415-0410-9bf9-f77b7e298cf2>2005-08-16 18:19:06 +0000
committerods15 <ods15@b3059339-0415-0410-9bf9-f77b7e298cf2>2005-08-16 18:19:06 +0000
commit085b6f59fad8631cd9595a75bbb711f53a79cd20 (patch)
tree03619828730c5db3c13d9cc3d839dc5c8fe1e90e /TOOLS
parent44ec3f7566a1dcfc7cb392226c30d05bb0793204 (diff)
downloadmpv-085b6f59fad8631cd9595a75bbb711f53a79cd20.tar.bz2
mpv-085b6f59fad8631cd9595a75bbb711f53a79cd20.tar.xz
silly printf() is the onyl reason avi-fix was so slow, a printf for
EVERY byte is pretty hefty... git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@16235 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'TOOLS')
-rw-r--r--TOOLS/avi-fix.c21
1 files changed, 14 insertions, 7 deletions
diff --git a/TOOLS/avi-fix.c b/TOOLS/avi-fix.c
index 45bb4c8fa8..f4c503f157 100644
--- a/TOOLS/avi-fix.c
+++ b/TOOLS/avi-fix.c
@@ -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 @@ faszom:
// 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 @@ faszom:
// 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;