ffmpeg: When streamcopying, only add the input seek position when copying timestamps.

Using -ss as an input option shifts timestamps down by the seek, so it
doesn't have to be added to the recording time when checking whether to
stop.

Fixes #977

Signed-off-by: Simon Thelen <ffmpeg-dev@c-14.de>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
Simon Thelen 2015-11-22 15:03:17 +01:00 committed by Michael Niedermayer
parent 293c170f59
commit 5b6c0fdb43
1 changed files with 1 additions and 1 deletions

View File

@ -1831,7 +1831,7 @@ static void do_streamcopy(InputStream *ist, OutputStream *ost, const AVPacket *p
if (f->recording_time != INT64_MAX) { if (f->recording_time != INT64_MAX) {
start_time = f->ctx->start_time; start_time = f->ctx->start_time;
if (f->start_time != AV_NOPTS_VALUE) if (f->start_time != AV_NOPTS_VALUE && copy_ts)
start_time += f->start_time; start_time += f->start_time;
if (ist->pts >= f->recording_time + start_time) { if (ist->pts >= f->recording_time + start_time) {
close_output_stream(ost); close_output_stream(ost);