[FFmpeg-cvslog] adx: check for unsupported ADX formats

Justin Ruggles git at videolan.org
Sun Nov 27 00:39:15 CET 2011


ffmpeg | branch: master | Justin Ruggles <justin.ruggles at gmail.com> | Sun Nov 20 17:07:59 2011 -0500| [d1745619dbd794aaf0e7aa51d14af5f99869ec93] | committer: Justin Ruggles

adx: check for unsupported ADX formats

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

 libavcodec/adxdec.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/libavcodec/adxdec.c b/libavcodec/adxdec.c
index f9f17cd..ee1f1b0 100644
--- a/libavcodec/adxdec.c
+++ b/libavcodec/adxdec.c
@@ -89,6 +89,12 @@ static int adx_decode_header(AVCodecContext *avctx, const uint8_t *buf,
     if (bufsize < offset || memcmp(buf + offset - 6, "(c)CRI", 6))
         return AVERROR_INVALIDDATA;
 
+    /* check for encoding=3 block_size=18, sample_size=4 */
+    if (buf[4] != 3 || buf[5] != 18 || buf[6] != 4) {
+        av_log_ask_for_sample(avctx, "unsupported ADX format\n");
+        return AVERROR_PATCHWELCOME;
+    }
+
     c->channels = avctx->channels = buf[7];
     if (avctx->channels > 2)
         return AVERROR_INVALIDDATA;



More information about the ffmpeg-cvslog mailing list