From 14f6c4356b4a5d649858c245eb3ffd503d5abe72 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Fri, 2 Oct 2015 20:05:06 +0200 Subject: [PATCH] avformat/flvdec: accept sizes if they are off by 11 This error was produced by rtmproto.c, it is possibly such streams where dumped, this commit is needed to support them Fixes: z0e.flv Signed-off-by: Michael Niedermayer --- libavformat/flvdec.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libavformat/flvdec.c b/libavformat/flvdec.c index a59c07d34a..8f21fc13fb 100644 --- a/libavformat/flvdec.c +++ b/libavformat/flvdec.c @@ -1138,7 +1138,9 @@ retry_duration: leave: last = avio_rb32(s->pb); - if (last != orig_size + 11 && !flv->broken_sizes) { + if (last != orig_size + 11 && + (last != orig_size || !last) && + !flv->broken_sizes) { av_log(s, AV_LOG_ERROR, "Packet mismatch %d %d\n", last, orig_size + 11); avio_seek(s->pb, pos + 1, SEEK_SET); ret = resync(s);