Do not duplicate frames if the muxer claims that it is not needed.

Note to release manager, this is risky and should be reverted if
it causes any problem.

Originally committed as revision 17555 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Michael Niedermayer 2009-02-24 15:06:17 +00:00
parent 2591821213
commit ad48c9f0b8

View File

@ -865,7 +865,7 @@ static void do_video_out(AVFormatContext *s,
//FIXME set to 0.5 after we fix some dts/pts bugs like in avidec.c
if (vdelta < -1.1)
nb_frames = 0;
else if (video_sync_method == 2)
else if (video_sync_method == 2 || (video_sync_method<0 && (s->oformat->flags & AVFMT_VARIABLE_FPS)))
ost->sync_opts= lrintf(get_sync_ipts(ost) / av_q2d(enc->time_base));
else if (vdelta > 1.1)
nb_frames = lrintf(vdelta);