summaryrefslogtreecommitdiffstats
path: root/libmpdemux/aviheader.c
diff options
context:
space:
mode:
authorarpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2>2001-12-27 00:37:03 +0000
committerarpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2>2001-12-27 00:37:03 +0000
commitbdf4a2dc07b7d90c06d858ff7dba2bf15099d0b8 (patch)
treec7b2624b166a2e08843a7141066add1c7c3e13e5 /libmpdemux/aviheader.c
parent94ee8d707925b95c6563522d4b109719074e4b23 (diff)
downloadmpv-bdf4a2dc07b7d90c06d858ff7dba2bf15099d0b8.tar.bz2
mpv-bdf4a2dc07b7d90c06d858ff7dba2bf15099d0b8.tar.xz
better, nicer progress status for index generation
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@3782 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux/aviheader.c')
-rw-r--r--libmpdemux/aviheader.c18
1 files changed, 16 insertions, 2 deletions
diff --git a/libmpdemux/aviheader.c b/libmpdemux/aviheader.c
index 13b506e8ef..0751723f4d 100644
--- a/libmpdemux/aviheader.c
+++ b/libmpdemux/aviheader.c
@@ -223,8 +223,22 @@ if(index_mode>=2 || (priv->idx_size==0 && index_mode==1)){
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];