diff options
Diffstat (limited to 'libavformat/segment.c')
-rw-r--r-- | libavformat/segment.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libavformat/segment.c b/libavformat/segment.c index 3de462326a..7c3a3c5f30 100644 --- a/libavformat/segment.c +++ b/libavformat/segment.c @@ -728,7 +728,7 @@ static int seg_write_packet(AVFormatContext *s, AVPacket *pkt) seg->cur_entry.index = seg->segment_idx + seg->segment_idx_wrap*seg->segment_idx_wrap_nb; seg->cur_entry.start_time = (double)pkt->pts * av_q2d(st->time_base); seg->cur_entry.start_pts = av_rescale_q(pkt->pts, st->time_base, AV_TIME_BASE_Q); - } else if (pkt->pts != AV_NOPTS_VALUE) { + } else if (pkt->pts != AV_NOPTS_VALUE && pkt->stream_index == seg->reference_stream_index) { seg->cur_entry.end_time = FFMAX(seg->cur_entry.end_time, (double)(pkt->pts + pkt->duration) * av_q2d(st->time_base)); } |