From e806ceaa7b41ebacea94eab03ec6daaad2cd4f43 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Wed, 8 Feb 2012 07:56:53 +0100 Subject: [PATCH] ffmpeg: Use the correct (dts) variables for stream copy. Strongly based on Anton Khirnovs code. Signed-off-by: Michael Niedermayer --- ffmpeg.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ffmpeg.c b/ffmpeg.c index e277eea23a..74529d6892 100644 --- a/ffmpeg.c +++ b/ffmpeg.c @@ -2297,18 +2297,18 @@ static int output_packet(InputStream *ist, /* handle stream copy */ if (!ist->decoding_needed) { rate_emu_sleep(ist); - ist->pts = ist->next_pts; + ist->dts = ist->next_dts; switch (ist->st->codec->codec_type) { case AVMEDIA_TYPE_AUDIO: - ist->next_pts += ((int64_t)AV_TIME_BASE * ist->st->codec->frame_size) / + ist->next_dts += ((int64_t)AV_TIME_BASE * ist->st->codec->frame_size) / ist->st->codec->sample_rate; break; case AVMEDIA_TYPE_VIDEO: if (pkt->duration) { - ist->next_pts += av_rescale_q(pkt->duration, ist->st->time_base, AV_TIME_BASE_Q); + ist->next_dts += av_rescale_q(pkt->duration, ist->st->time_base, AV_TIME_BASE_Q); } else if(ist->st->codec->time_base.num != 0) { int ticks= ist->st->parser ? ist->st->parser->repeat_pict + 1 : ist->st->codec->ticks_per_frame; - ist->next_pts += ((int64_t)AV_TIME_BASE * + ist->next_dts += ((int64_t)AV_TIME_BASE * ist->st->codec->time_base.num * ticks) / ist->st->codec->time_base.den; }