[FFmpeg-cvslog] avformat/mux: use only valid timestamps when calculating packet distance

James Almer git at videolan.org
Wed Jan 4 02:36:47 EET 2023


ffmpeg | branch: master | James Almer <jamrial at gmail.com> | Wed Dec 28 18:36:11 2022 -0300| [99e3d26f2061541c772dcd678cbe8c48afa539c5] | committer: James Almer

avformat/mux: use only valid timestamps when calculating packet distance

Fixes: signed integer overflow: 0 - -9223372036854775808 cannot be represented in type 'long int'
Fixes: fate-cover-art-aiff-id3v2-remux, fate-cover-art-mp3-id3v2-remux and fate-mov-cover-image
under ubsan.

Signed-off-by: James Almer <jamrial at gmail.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=99e3d26f2061541c772dcd678cbe8c48afa539c5
---

 libavformat/mux.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/libavformat/mux.c b/libavformat/mux.c
index 37fe19358d..b2b5be63b4 100644
--- a/libavformat/mux.c
+++ b/libavformat/mux.c
@@ -951,6 +951,7 @@ int ff_interleave_packet_per_dts(AVFormatContext *s, AVPacket *pkt,
 
     if (s->max_interleave_delta > 0 &&
         si->packet_buffer.head &&
+        si->packet_buffer.head->pkt.dts != AV_NOPTS_VALUE &&
         !flush &&
         si->nb_interleaved_streams == stream_count+noninterleaved_count
     ) {



More information about the ffmpeg-cvslog mailing list