Check pkt.pts against the recording time.

This fixes at least ogg encoding with -t where the file was slightly too long.

Originally committed as revision 21598 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Michael Niedermayer
2010-02-01 22:08:45 +00:00
parent d2a2b08cfe
commit f8ccf72005
3 changed files with 13 additions and 9 deletions

View File

@ -2317,6 +2317,10 @@ static int av_encode(AVFormatContext **output_files,
}
}
/* finish if recording time exhausted */
if (pkt.pts * av_q2d(ist->st->time_base) >= (recording_time / 1000000.0))
goto discard_packet;
//fprintf(stderr,"read #%d.%d size=%d\n", ist->file_index, ist->index, pkt.size);
if (output_packet(ist, ist_index, ost_table, nb_ostreams, &pkt) < 0) {