diff options
author | arpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-04-15 02:48:11 +0000 |
---|---|---|
committer | arpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-04-15 02:48:11 +0000 |
commit | 1c5ebbf9a40b6da3cd56e91f84983af8254e7865 (patch) | |
tree | e632385e7e158b8a88c5bef629fa7861f952a26f /libmpdemux/demux_mov.c | |
parent | 5460fb3727ee103ad27bac4a77f8afa98abb581d (diff) | |
download | mpv-1c5ebbf9a40b6da3cd56e91f84983af8254e7865.tar.bz2 mpv-1c5ebbf9a40b6da3cd56e91f84983af8254e7865.tar.xz |
FPS calculation fixed
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@5631 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux/demux_mov.c')
-rw-r--r-- | libmpdemux/demux_mov.c | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/libmpdemux/demux_mov.c b/libmpdemux/demux_mov.c index 35fff04dfd..10d1aa7ccc 100644 --- a/libmpdemux/demux_mov.c +++ b/libmpdemux/demux_mov.c @@ -457,14 +457,6 @@ static void lschunks(demuxer_t* demuxer,int level,off_t endpos,mov_track_t* trak trak->durmap[i].num=stream_read_dword(demuxer->stream); trak->durmap[i].dur=stream_read_dword(demuxer->stream); pts+=trak->durmap[i].num*trak->durmap[i].dur; - - if(i==0 && trak->type == MOV_TRAK_VIDEO) - { - sh_video_t* sh=get_sh_video(demuxer,priv->track_db); - if (sh && !sh->fps) - sh->fps = trak->timescale/trak->durmap[i].dur; - /* initial fps */ - } } if(trak->length!=pts) mp_msg(MSGT_DEMUX, MSGL_WARN, "Warning! pts=%d length=%d\n",pts,trak->length); break; @@ -876,7 +868,8 @@ static void lschunks(demuxer_t* demuxer,int level,off_t endpos,mov_track_t* trak // printf("pos=%d max=%d\n",pos,trak->stdata_len); } } - if(!sh->fps) sh->fps=trak->timescale; + sh->fps=trak->timescale/ + ((trak->durmap_size>=1)?(float)trak->durmap[0].dur:1); sh->frametime=1.0f/sh->fps; sh->disp_w=trak->stdata[25]|(trak->stdata[24]<<8); |