Signed-off-by: Shiqi Zhu <hiccup...@gmail.com> --- libavformat/demux.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/libavformat/demux.c b/libavformat/demux.c index e19b8b6473..74be509c8b 100644 --- a/libavformat/demux.c +++ b/libavformat/demux.c @@ -856,15 +856,16 @@ static void update_initial_timestamps(AVFormatContext *s, int stream_index, uint64_t shift; - if (sti->first_dts != AV_NOPTS_VALUE || - dts == AV_NOPTS_VALUE || + if (sti->first_dts == AV_NOPTS_VALUE) + sti->first_dts = dts - (sti->cur_dts - RELATIVE_TS_BASE); + + if (dts == AV_NOPTS_VALUE || sti->cur_dts == AV_NOPTS_VALUE || sti->cur_dts < INT_MIN + RELATIVE_TS_BASE || dts < INT_MIN + (sti->cur_dts - RELATIVE_TS_BASE) || is_relative(dts)) return; - sti->first_dts = dts - (sti->cur_dts - RELATIVE_TS_BASE); sti->cur_dts = dts; shift = (uint64_t)sti->first_dts - RELATIVE_TS_BASE; -- 2.34.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".