[FFmpeg-cvslog] ffmpeg: Use the correct (dts) variables for stream copy.
Michael Niedermayer
git at videolan.org
Wed Feb 8 08:22:53 CET 2012
ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Wed Feb 8 07:56:53 2012 +0100| [e806ceaa7b41ebacea94eab03ec6daaad2cd4f43] | committer: Michael Niedermayer
ffmpeg: Use the correct (dts) variables for stream copy.
Strongly based on Anton Khirnovs code.
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=e806ceaa7b41ebacea94eab03ec6daaad2cd4f43
---
ffmpeg.c | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/ffmpeg.c b/ffmpeg.c
index e277eea..74529d6 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;
}
More information about the ffmpeg-cvslog
mailing list