[FFmpeg-cvslog] lavf/mux: do not apply max_interleave_delta to subtitles

Anton Khirnov git at videolan.org
Tue Nov 14 19:19:48 EET 2023


ffmpeg | branch: master | Anton Khirnov <anton at khirnov.net> | Tue Oct 31 13:19:04 2023 +0100| [de85815bfaa3e25b7ea46ffc837983df216fcd1b] | committer: Anton Khirnov

lavf/mux: do not apply max_interleave_delta to subtitles

It is common for subtitle streams to have large gaps between packets.
When the caller is interleaving packets from multiple files, it can
easily happen that two successive subtitle packets trigger this limit,
even though no excessive buffering is happening.

Should fix #7064

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

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

diff --git a/libavformat/mux.c b/libavformat/mux.c
index c7877c5d98..de10d2c008 100644
--- a/libavformat/mux.c
+++ b/libavformat/mux.c
@@ -995,7 +995,7 @@ int ff_interleave_packet_per_dts(AVFormatContext *s, AVPacket *pkt,
             const PacketListEntry *const last = sti->last_in_packet_buffer;
             int64_t last_dts;
 
-            if (!last)
+            if (!last || st->codecpar->codec_type == AVMEDIA_TYPE_SUBTITLE)
                 continue;
 
             last_dts = av_rescale_q(last->pkt.dts,



More information about the ffmpeg-cvslog mailing list