# HG changeset patch # User arpi # Date 1009413423 0 # Node ID 3a2bd7d449f7927cb16de97fc31451b9950f06d5 # Parent 9eb4aa623ab62f256dc6ef04bd8086cb68f4f99d better, nicer progress status for index generation diff -r 9eb4aa623ab6 -r 3a2bd7d449f7 libmpdemux/aviheader.c --- a/libmpdemux/aviheader.c Thu Dec 27 00:34:00 2001 +0000 +++ b/libmpdemux/aviheader.c Thu Dec 27 00:37:03 2001 +0000 @@ -223,8 +223,22 @@ case 2: if(c==0x1B6) idx->dwFlags=0;break; // divx 4 } } - mp_msg(MSGT_HEADER,MSGL_STATUS,"Generating Index: %02d (byteposition)\r", (int)demuxer->filepos/((int)demuxer->movi_end/100+1)); - fflush(stdout); + + // update status line: + { static int lastpos; + int pos; + off_t len=demuxer->movi_end-demuxer->movi_start; + if(len){ + pos=100*(demuxer->filepos-demuxer->movi_start)/len; // % + } else { + pos=(demuxer->filepos-demuxer->movi_start)>>20; // MB + } + if(pos!=lastpos){ + lastpos=pos; + mp_msg(MSGT_HEADER,MSGL_STATUS,"Generating Index: %3d %s \r", + pos, len?"%":"MB"); + } + } mp_dbg(MSGT_HEADER,MSGL_DBG2,"%08X %08X %.4s %08X %X\n",(int)demuxer->filepos,id,(char *) &id,(int)c,(unsigned int) idx->dwFlags); #if 0 { unsigned char tmp[64];