diff mplayer.c @ 6912:5ddd609550d5

- fix equ handling - fix dvd pos bar - fix 10l bug in evLoadPlay bugfix :) - mittomen
author pontscho
date Mon, 05 Aug 2002 01:14:14 +0000
parents c2d4100c964e
children d882c7063e6d
line wrap: on
line diff
--- a/mplayer.c	Mon Aug 05 01:06:25 2002 +0000
+++ b/mplayer.c	Mon Aug 05 01:14:14 2002 +0000
@@ -1358,7 +1358,7 @@
      guiGetEvent( guiSetFileName,filename );
      if ( sh_audio ) guiIntfStruct.AudioType=sh_audio->channels; else guiIntfStruct.AudioType=0;
      if ( !sh_video && sh_audio ) guiGetEvent( guiSetAudioOnly,(char *)1 ); else guiGetEvent( guiSetAudioOnly,(char *)0 );
-     guiGetEvent( guiSetValues,NULL );
+     guiGetEvent( guiSetValues,(char *)sh_video );
     }
 #endif
 
@@ -2920,12 +2920,9 @@
 	  // get pos from frame number / total frames
 	  guiIntfStruct.Position=(float)d_video->pack_no*100.0f/sh_video->video.dwLength;
 	} else {
-	  // get pos from file position / filesize
-          int len=((demuxer->movi_end-demuxer->movi_start));
-	  int pos;
-	  if ( demuxer->file_format==DEMUXER_TYPE_AUDIO ) pos=stream->pos;
-	   else pos=(demuxer->file_format==DEMUXER_TYPE_AVI)?demuxer->filepos:d_video->pos;
-	  guiIntfStruct.Position=(len<=0)?0:((float)(pos-demuxer->movi_start) / len * 100.0f);
+	 int len = ( ( demuxer->movi_end - demuxer->movi_start ) >> 8 );
+	 int pos = ( demuxer->file_format == DEMUXER_TYPE_AUDIO?stream->pos:demuxer->filepos );
+	 guiIntfStruct.Position=(len <= 0? 0.0f : ( pos - demuxer->movi_start ) / len / 2.56f /* / 256.0f * 100.0f */ );
 	}
 	if ( sh_video ) guiIntfStruct.TimeSec=d_video->pts;
 	  else if ( sh_audio ) guiIntfStruct.TimeSec=sh_audio->timer;