[FFmpeg-cvslog] avformat/apm: check codec tag in probe and add constant

Zane van Iperen git at videolan.org
Wed Jun 17 22:46:24 EEST 2020


ffmpeg | branch: master | Zane van Iperen <zane at zanevaniperen.com> | Fri Jun 12 11:46:15 2020 +0000| [a37109d55574a3c388f3e65610244d10dac8dd59] | committer: Michael Niedermayer

avformat/apm: check codec tag in probe and add constant

Signed-off-by: Zane van Iperen <zane at zanevaniperen.com>
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>

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

 libavformat/apm.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/libavformat/apm.c b/libavformat/apm.c
index 9d2a856cc4..dc59c16562 100644
--- a/libavformat/apm.c
+++ b/libavformat/apm.c
@@ -29,6 +29,7 @@
 #define APM_VS12_CHUNK_SIZE     76
 #define APM_MAX_READ_SIZE       4096
 
+#define APM_TAG_CODEC           0x2000
 #define APM_TAG_VS12            MKTAG('v', 's', '1', '2')
 #define APM_TAG_DATA            MKTAG('D', 'A', 'T', 'A')
 
@@ -74,6 +75,9 @@ static void apm_parse_vs12(APMVS12Chunk *vs12, const uint8_t *buf)
 
 static int apm_probe(const AVProbeData *p)
 {
+    if (AV_RL16(p->buf) != APM_TAG_CODEC)
+        return 0;
+
     if (p->buf_size < 100)
         return 0;
 
@@ -103,7 +107,7 @@ static int apm_read_header(AVFormatContext *s)
     if (st->codecpar->bits_per_coded_sample != 4)
         return AVERROR_INVALIDDATA;
 
-    if (st->codecpar->codec_tag != 0x2000)
+    if (st->codecpar->codec_tag != APM_TAG_CODEC)
         return AVERROR_INVALIDDATA;
 
     /* ff_get_wav_header() does most of the work, but we need to fix a few things. */



More information about the ffmpeg-cvslog mailing list