summaryrefslogtreecommitdiff
path: root/libavcodec
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2019-12-29 21:22:05 +0100
committerMichael Niedermayer <michael@niedermayer.cc>2020-01-22 21:50:49 +0100
commit550a6b4212ca98ccee2d633abaf408d42a3d6187 (patch)
tree149d2edc1555664b8b2dcbb55b9afa91f3802326 /libavcodec
parentd48e510124d0fea24e2ec27271687c92e4428a18 (diff)
avcodec/avcodec: Add codec_tags array to AVCodec
This allows the fuzzer to target meaningfull codec tags instead of hunting the 4gb space, which it seems to have problems with. Suggested-by: James Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavcodec')
-rw-r--r--libavcodec/avcodec.h5
-rw-r--r--libavcodec/internal.h6
2 files changed, 11 insertions, 0 deletions
diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
index 4b0e7c0853..774ed1e641 100644
--- a/libavcodec/avcodec.h
+++ b/libavcodec/avcodec.h
@@ -3644,6 +3644,11 @@ typedef struct AVCodec {
* The user can only access this field via avcodec_get_hw_config().
*/
const struct AVCodecHWConfigInternal **hw_configs;
+
+ /**
+ * List of supported codec_tags, terminated by FF_CODEC_TAGS_END.
+ */
+ const uint32_t *codec_tags;
} AVCodec;
#if FF_API_CODEC_GET_SET
diff --git a/libavcodec/internal.h b/libavcodec/internal.h
index 5930dd0da0..4188d1c46f 100644
--- a/libavcodec/internal.h
+++ b/libavcodec/internal.h
@@ -69,6 +69,12 @@
*/
#define FF_CODEC_CAP_SLICE_THREAD_HAS_MF (1 << 5)
+/**
+ * AVCodec.codec_tags termination value
+ */
+#define FF_CODEC_TAGS_END -1
+
+
#ifdef TRACE
# define ff_tlog(ctx, ...) av_log(ctx, AV_LOG_TRACE, __VA_ARGS__)
#else