avcodec/libopenjpegdec: Mark as experimental if <= 1.3
authorMichael Niedermayer <michaelni@gmx.at>
Tue, 9 Jun 2015 01:35:07 +0000 (03:35 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Tue, 9 Jun 2015 16:59:30 +0000 (18:59 +0200)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavcodec/libopenjpegdec.c

index 8fe7a50..7f28e87 100644 (file)
@@ -433,6 +433,15 @@ done:
     return ret;
 }
 
+static av_cold void libopenjpeg_static_init(AVCodec *codec)
+{
+    const char *version = opj_version();
+    int major, minor;
+
+    if (sscanf(version, "%d.%d", &major, &minor) == 2 && 1000*major + minor <= 1003)
+        codec->capabilities |= CODEC_CAP_EXPERIMENTAL;
+}
+
 #define OFFSET(x) offsetof(LibOpenJPEGContext, x)
 #define VD AV_OPT_FLAG_VIDEO_PARAM | AV_OPT_FLAG_DECODING_PARAM
 
@@ -460,4 +469,5 @@ AVCodec ff_libopenjpeg_decoder = {
     .capabilities   = CODEC_CAP_DR1 | CODEC_CAP_FRAME_THREADS,
     .max_lowres     = 31,
     .priv_class     = &openjpeg_class,
+    .init_static_data = libopenjpeg_static_init,
 };