]> git.sesse.net Git - ffmpeg/commitdiff
cbs: Add a table of all supported codec IDs
authorMark Thompson <sw@jkqxz.net>
Sun, 11 Mar 2018 17:27:15 +0000 (17:27 +0000)
committerMark Thompson <sw@jkqxz.net>
Sun, 18 Mar 2018 17:55:00 +0000 (17:55 +0000)
Use it as the set of codec IDs supported by the trace_headers BSF.

configure
libavcodec/cbs.c
libavcodec/cbs.h
libavcodec/trace_headers_bsf.c

index f09f48c54baad0f4c0f742517b2bdf501b5bf316..87430f460f92075cbaa545ecf1e4789f61fecd51 100755 (executable)
--- a/configure
+++ b/configure
@@ -2924,7 +2924,7 @@ h264_redundant_pps_bsf_select="cbs_h264"
 hevc_metadata_bsf_select="cbs_h265"
 mjpeg2jpeg_bsf_select="jpegtables"
 mpeg2_metadata_bsf_select="cbs_mpeg2"
-trace_headers_bsf_select="cbs_h264 cbs_h265 cbs_mpeg2"
+trace_headers_bsf_select="cbs"
 
 # external libraries
 aac_at_decoder_deps="audiotoolbox"
index 62f60be437bcd299c71d439e2edcc7735cbc198e..897e0bb28e34c4108371e01462b8b374195216b4 100644 (file)
@@ -40,6 +40,19 @@ static const CodedBitstreamType *cbs_type_table[] = {
 #endif
 };
 
+const enum AVCodecID ff_cbs_all_codec_ids[] = {
+#if CONFIG_CBS_H264
+    AV_CODEC_ID_H264,
+#endif
+#if CONFIG_CBS_H265
+    AV_CODEC_ID_H265,
+#endif
+#if CONFIG_CBS_MPEG2
+    AV_CODEC_ID_MPEG2VIDEO,
+#endif
+    AV_CODEC_ID_NONE
+};
+
 int ff_cbs_init(CodedBitstreamContext **ctx_ptr,
                 enum AVCodecID codec_id, void *log_ctx)
 {
index 396ff0faec7fb3aa291888f3b6a472584f9a321e..402eb39e00aef758aa9575f3d80c45922007f308 100644 (file)
@@ -201,6 +201,14 @@ typedef struct CodedBitstreamContext {
 } CodedBitstreamContext;
 
 
+/**
+ * Table of all supported codec IDs.
+ *
+ * Terminated by AV_CODEC_ID_NONE.
+ */
+extern const enum AVCodecID ff_cbs_all_codec_ids[];
+
+
 /**
  * Create and initialise a new context for the given codec.
  */
index 0697e98943d597b522bdc3a30597b21e055236bc..94a3ef72a2224a3c0f7d2fae61303edfdc667034 100644 (file)
@@ -107,18 +107,11 @@ static int trace_headers(AVBSFContext *bsf, AVPacket *pkt)
     return 0;
 }
 
-static const enum AVCodecID trace_headers_codec_ids[] = {
-    AV_CODEC_ID_H264,
-    AV_CODEC_ID_HEVC,
-    AV_CODEC_ID_MPEG2VIDEO,
-    AV_CODEC_ID_NONE,
-};
-
 const AVBitStreamFilter ff_trace_headers_bsf = {
     .name           = "trace_headers",
     .priv_data_size = sizeof(TraceHeadersContext),
     .init           = &trace_headers_init,
     .close          = &trace_headers_close,
     .filter         = &trace_headers,
-    .codec_ids      = trace_headers_codec_ids,
+    .codec_ids      = ff_cbs_all_codec_ids,
 };