[FFmpeg-devel] [PATCH] avformat/mpegts: ensure seekback for small probesize
Andriy Gelman
andriy.gelman at gmail.com
Sun Oct 4 20:14:29 EEST 2020
From: Andriy Gelman <andriy.gelman at gmail.com>
get_packet_size() may read upto PROBE_PACKET_MAX_BUF bytes, which may be
larger than probesize.
Signed-off-by: Andriy Gelman <andriy.gelman at gmail.com>
---
An alternative could be to make sure we don't read more than s->probesize bytes
in get_packet_size(), but because this function is also called during resync
(midstream) limiting the read bytes may not be the best option.
libavformat/mpegts.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c
index 50d4d5e9bc..019b627d51 100644
--- a/libavformat/mpegts.c
+++ b/libavformat/mpegts.c
@@ -3054,7 +3054,7 @@ static int mpegts_read_header(AVFormatContext *s)
s->internal->prefer_codec_framerate = 1;
- if (ffio_ensure_seekback(pb, probesize) < 0)
+ if (ffio_ensure_seekback(pb, FFMAX(probesize, PROBE_PACKET_MAX_BUF)) < 0)
av_log(s, AV_LOG_WARNING, "Failed to allocate buffers for seekback\n");
pos = avio_tell(pb);
--
2.28.0
More information about the ffmpeg-devel
mailing list