ffmpeg: honor -ss and -t parameters with muxed subtitles.
authorClément Bœsch <ubitux@gmail.com>
Wed, 1 Aug 2012 16:39:46 +0000 (18:39 +0200)
committerClément Bœsch <ubitux@gmail.com>
Wed, 1 Aug 2012 18:37:34 +0000 (20:37 +0200)
commit53a3748ed23136615e488dc463b91aa57c0e9ec6
tree2da95a1755f6090209b3b21da4797d5531efd713
parentc99d3e2e6c370e366a32b1c0caa2b9dfc8ad5bd1
ffmpeg: honor -ss and -t parameters with muxed subtitles.

This patch fixes two things:

 - in case of subtitles, check_recording_time() is comparing the current
   PTS to the recording time (-t option, set to INT_MAX by default), so
   the -ss option needs to be taken into account. It is not required in
   do_{audio,video}_out() because this adjustment is set while polling
   the filtergraph (see poll_filters()).

 - It also adjusts the PTS sent to the encoder (and later transmitted to
   the muxer) so the TS in the output make sense and are not kept
   verbatim.

Note: this only works for muxers honoring the PTS, such as
lavf/matroskaenc. But for other such as the ASS muxer which just does a
verbatim copy, or the SubRip muxer which doesn't write the TS in some
cases, it will not work yet.
ffmpeg.c