aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorReynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com>2014-01-23 16:03:09 -0300
committerReynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com>2014-01-23 17:40:58 -0300
commitd467e7df1a74b74eaea27434b1c4de17518f400f (patch)
treedc4ef236125fe55e831ab96d7738af744f077636
parent30f4c58f6f92765b3d06b0950392e5264630bce0 (diff)
downloadffmpeg-d467e7df1a74b74eaea27434b1c4de17518f400f.tar.gz
libavformat/mtv: donwgrade probe score for < 512
MTV has a 512 bytes header. We should be able to parse required fiels from the first 57 (rest is padding) but if we haven't seen enough data then go with SCORE_EXTENSION. Signed-off-by: Reynaldo H. Verdejo Pinochet <r.verdejo@sisa.samsung.com>
-rw-r--r--libavformat/mtv.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/libavformat/mtv.c b/libavformat/mtv.c
index 5e638cacec..0ce3f8e6d8 100644
--- a/libavformat/mtv.c
+++ b/libavformat/mtv.c
@@ -78,6 +78,13 @@ static int mtv_probe(AVProbeData *p)
if(p->buf[51] != 16)
return AVPROBE_SCORE_EXTENSION / 2; // But we are going to assume 16bpp anyway ..
+ /* We had enough data to parse header values
+ * but we expect to be able to get 512 bytes
+ * of header to be sure.
+ */
+ if (p->buf_size < MTV_HEADER_SIZE)
+ return AVPROBE_SCORE_EXTENSION;
+
return AVPROBE_SCORE_MAX;
}