Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
lavf/utils: fix for wrap-around when program structure changes
  • Loading branch information
maki-rxrz authored and jeeb committed Feb 11, 2018
1 parent 63a4bdb commit 6117366
Showing 1 changed file with 9 additions and 2 deletions.
11 changes: 9 additions & 2 deletions libavformat/utils.c
Expand Up @@ -810,8 +810,15 @@ static int update_wrap_reference(AVFormatContext *s, AVStream *st, int stream_in
while (program) {
if (program->pts_wrap_reference != pts_wrap_reference) {
for (i = 0; i<program->nb_stream_indexes; i++) {
s->streams[program->stream_index[i]]->pts_wrap_reference = pts_wrap_reference;
s->streams[program->stream_index[i]]->pts_wrap_behavior = pts_wrap_behavior;
if (s->streams[program->stream_index[i]]->pts_wrap_reference != AV_NOPTS_VALUE &&
(s->streams[program->stream_index[i]]->pts_wrap_reference - pts_wrap_reference > 1LL << st->pts_wrap_bits-3 ||
s->streams[program->stream_index[i]]->pts_wrap_reference < pts_wrap_reference)) {
pts_wrap_reference = s->streams[program->stream_index[i]]->pts_wrap_reference;
pts_wrap_behavior = s->streams[program->stream_index[i]]->pts_wrap_behavior;
} else {
s->streams[program->stream_index[i]]->pts_wrap_reference = pts_wrap_reference;
s->streams[program->stream_index[i]]->pts_wrap_behavior = pts_wrap_behavior;
}
}

program->pts_wrap_reference = pts_wrap_reference;
Expand Down

0 comments on commit 6117366

Please sign in to comment.