Browse Source

cbs: Add a table of all supported codec IDs

Use it as the set of codec IDs supported by the trace_headers BSF.
tags/n4.0
Mark Thompson 7 years ago
parent
commit
84bb8327f5
4 changed files with 23 additions and 9 deletions
  1. +1
    -1
      configure
  2. +13
    -0
      libavcodec/cbs.c
  3. +8
    -0
      libavcodec/cbs.h
  4. +1
    -8
      libavcodec/trace_headers_bsf.c

+ 1
- 1
configure View File

@@ -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"


+ 13
- 0
libavcodec/cbs.c View 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)
{


+ 8
- 0
libavcodec/cbs.h View 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.
*/


+ 1
- 8
libavcodec/trace_headers_bsf.c View 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,
};

Loading…
Cancel
Save