# HG changeset patch # User arpi # Date 995674209 0 # Node ID faee296c7c9a32976fc05e9db06465b2cc79aa50 # Parent 16bedc82bd09d14d86f620b811be7460fab8fa18 video pts calculation precision fixed diff -r 16bedc82bd09 -r faee296c7c9a demux_avi.c --- a/demux_avi.c Fri Jul 20 20:42:13 2001 +0000 +++ b/demux_avi.c Sat Jul 21 00:10:09 2001 +0000 @@ -68,7 +68,7 @@ pts=avi_audio_pts; avi_audio_pts=0; } else - if(ds==demux->video){ + if(ds && ds==demux->video){ // video if(skip_video_frames>0){ // drop frame (seeking) @@ -82,8 +82,16 @@ //avi_video_pts+=(float)avi_header.video.dwScale/(float)avi_header.video.dwRate; //avi_video_pts+=((sh_video_t*)ds->sh)->frametime; // FIXME!!! +#if 1 +// printf("ds=0x%X\n",ds); +// printf("packno=%d\n",ds->pack_no); + avi_video_pts = demux->video->pack_no * + (float)((sh_video_t*)demux->video->sh)->video.dwScale / + (float)((sh_video_t*)demux->video->sh)->video.dwRate; +#else avi_video_pts+=(float)((sh_video_t*)(demux->video->sh))->video.dwScale/(float)((sh_video_t*)(demux->video->sh))->video.dwRate; // avi_video_pts+=avi_video_ftime; +#endif avi_audio_pts=avi_video_pts; }