The 'sidx' earliest_presentation_time field is defined as PTS. Previously, it was incorrectly assigned to DTS, which could cause sync issues. This commit fixes the assignment to PTS as noted in the existing FIXME comment. --- libavformat/mov.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavformat/mov.c b/libavformat/mov.c index 009ddfec80..f651d0387b 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -5892,9 +5892,9 @@ static int mov_read_trun(MOVContext *c, AVIOContext *pb, MOVAtom atom) } else if (has_sidx && !c->use_tfdt || fallback_sidx) { // FIXME: sidx earliest_presentation_time is *PTS*, s.b. // pts = frag_stream_info->sidx_pts; - dts = frag_stream_info->sidx_pts; + pts = frag_stream_info->sidx_pts; // <--- FIXED av_log(c->fc, AV_LOG_DEBUG, "found sidx time %"PRId64 - ", using it for dts\n", frag_stream_info->sidx_pts); + ", using it for pts\n", frag_stream_info->sidx_pts); // Update log message too if you like, but logically just changing to pts is the key. } else { dts = sc->track_end - sc->time_offset; av_log(c->fc, AV_LOG_DEBUG, "found track end time %"PRId64 -- 2.49.0.windows.1 -- Disclaimer This email is governed by the Disclaimer Terms of somaiya.edu <http://somaiya.edu> which may be viewed at https://www.somaiya.edu/en/email-disclaimer <https://www.somaiya.edu/en/email-disclaimer> Finally, please do not print this email unless it is necessary. Every unprinted email helps the environment.