19 #ifndef AVCODEC_CBS_INTERNAL_H 20 #define AVCODEC_CBS_INTERNAL_H 67 int position,
const char *
name,
68 const char *bitstring, int64_t
value);
75 int width,
const char *
name, uint32_t *write_to,
76 uint32_t range_min, uint32_t range_max);
80 uint32_t range_min, uint32_t range_max);
84 #define MAX_UINT_BITS(length) ((UINT64_C(1) << (length)) - 1)
int(* assemble_fragment)(CodedBitstreamContext *ctx, CodedBitstreamFragment *frag)
void ff_cbs_trace_syntax_element(CodedBitstreamContext *ctx, int position, const char *name, const char *bitstring, int64_t value)
bitstream reader API header.
Coded bitstream unit structure.
void ff_cbs_trace_header(CodedBitstreamContext *ctx, const char *name)
static const uint8_t header[24]
AVCodecID
Identify the syntax and semantics of the bitstream.
void(* close)(CodedBitstreamContext *ctx)
const CodedBitstreamType ff_cbs_type_mpeg2
int(* write_unit)(CodedBitstreamContext *ctx, CodedBitstreamUnit *unit)
Libavcodec external API header.
typedef void(RENAME(mix_any_func_type))
Coded bitstream fragment structure, combining one or more units.
Context structure for coded bitstream operations.
const CodedBitstreamType ff_cbs_type_h265
int(* read_unit)(CodedBitstreamContext *ctx, CodedBitstreamUnit *unit)
int ff_cbs_read_unsigned(CodedBitstreamContext *ctx, GetBitContext *gbc, int width, const char *name, uint32_t *write_to, uint32_t range_min, uint32_t range_max)
int(* split_fragment)(CodedBitstreamContext *ctx, CodedBitstreamFragment *frag, int header)
const CodedBitstreamType ff_cbs_type_h264
int ff_cbs_write_unsigned(CodedBitstreamContext *ctx, PutBitContext *pbc, int width, const char *name, uint32_t value, uint32_t range_min, uint32_t range_max)