Go to the source code of this file.
Data Structures
Macros
#define
MAX_INT_BITS(length) ((INT64_C(1) << ((length) - 1)) - 1)
#define
MIN_INT_BITS(length) (-(INT64_C(1) << ((length) - 1)))
Enumerations
Functions
Macro Definition Documentation
◆ CBS_READ
◆ CBS_WRITE
◆ CBS_TRACE
◆ CBS_APV
#define CBS_APV CONFIG_CBS_APV
◆ CBS_AV1
#define CBS_AV1 CONFIG_CBS_AV1
◆ CBS_H264
#define CBS_H264 CONFIG_CBS_H264
◆ CBS_H265
#define CBS_H265 CONFIG_CBS_H265
◆ CBS_H266
#define CBS_H266 CONFIG_CBS_H266
◆ CBS_JPEG
#define CBS_JPEG CONFIG_CBS_JPEG
◆ CBS_MPEG2
#define CBS_MPEG2 CONFIG_CBS_MPEG2
◆ CBS_VP8
#define CBS_VP8 CONFIG_CBS_VP8
◆ CBS_VP9
#define CBS_VP9 CONFIG_CBS_VP9
◆ MAX_UINT_BITS
#define MAX_UINT_BITS
(
length )
((UINT64_C(1) << (length)) - 1)
◆ MAX_INT_BITS
#define MAX_INT_BITS
(
length )
((INT64_C(1) << ((length) - 1)) - 1)
◆ MIN_INT_BITS
#define MIN_INT_BITS
(
length )
(-(INT64_C(1) << ((length) - 1)))
◆ CBS_TRACE_READ_START
#define CBS_TRACE_READ_START
(
)
Value:
do { \
trace_start = *gbc; \
} while (0)
Definition at line 248 of file cbs_internal.h.
◆ CBS_TRACE_READ_END
#define CBS_TRACE_READ_END
(
)
Value: do { \
if (
ctx->trace_enable) { \
av_assert0(start_position <= end_position); \
ctx->trace_read_callback(
ctx->trace_context, &trace_start, \
end_position - start_position, \
} \
} while (0)
Definition at line 256 of file cbs_internal.h.
◆ CBS_TRACE_READ_END_NO_SUBSCRIPTS
#define CBS_TRACE_READ_END_NO_SUBSCRIPTS
(
)
Value: do { \
const
int *subscripts =
NULL; \
CBS_TRACE_READ_END(); \
} while (0)
Definition at line 269 of file cbs_internal.h.
◆ CBS_TRACE_READ_END_VALUE_ONLY
#define CBS_TRACE_READ_END_VALUE_ONLY
(
)
Value: do { \
if (
ctx->trace_enable) { \
ctx->trace_read_callback(
ctx->trace_context, &trace_start, 0, \
} \
} while (0)
Definition at line 277 of file cbs_internal.h.
◆ CBS_TRACE_WRITE_START
#define CBS_TRACE_WRITE_START
(
)
Value: int start_position; \
do { \
} while (0)
Definition at line 286 of file cbs_internal.h.
◆ CBS_TRACE_WRITE_END
#define CBS_TRACE_WRITE_END
(
)
Value: do { \
if (
ctx->trace_enable) { \
av_assert0(start_position <= end_position); \
ctx->trace_write_callback(
ctx->trace_context, pbc, \
end_position - start_position, \
} \
} while (0)
Definition at line 294 of file cbs_internal.h.
◆ CBS_TRACE_WRITE_END_NO_SUBSCRIPTS
#define CBS_TRACE_WRITE_END_NO_SUBSCRIPTS
(
)
Value: do { \
const
int *subscripts =
NULL; \
CBS_TRACE_WRITE_END(); \
} while (0)
Definition at line 306 of file cbs_internal.h.
◆ CBS_TRACE_WRITE_END_VALUE_ONLY
#define CBS_TRACE_WRITE_END_VALUE_ONLY
(
)
Value: do { \
if (
ctx->trace_enable) { \
init_put_bits(&
tmp, pbc->buf, start_position); \
skip_put_bits(&
tmp, start_position); \
ctx->trace_write_callback(
ctx->trace_context, &
tmp, 0, \
} \
} while (0)
Definition at line 316 of file cbs_internal.h.
◆ TYPE_LIST
#define TYPE_LIST
(
... )
{ __VA_ARGS__ }
◆ CBS_UNIT_TYPE_POD
#define CBS_UNIT_TYPE_POD
(
type_,
structure
)
Value: { \
.nb_unit_types = 1, \
.unit_type.list = { type_ }, \
.content_size = sizeof(structure), \
.
type.ref = { .nb_offsets = 0 }, \
}
Definition at line 339 of file cbs_internal.h.
◆ CBS_UNIT_RANGE_POD
#define CBS_UNIT_RANGE_POD
(
range_start,
range_end,
structure
)
Value: { \
.unit_type.range.start = range_start, \
.unit_type.range.end = range_end, \
.content_size = sizeof(structure), \
.
type.ref = { .nb_offsets = 0 }, \
}
Definition at line 346 of file cbs_internal.h.
◆ CBS_UNIT_TYPES_INTERNAL_REF
#define CBS_UNIT_TYPES_INTERNAL_REF
(
types,
structure,
ref_field
)
Value: { \
.content_size = sizeof(structure), \
.
type.ref = { .nb_offsets = 1, \
.offsets = { offsetof(structure, ref_field) } }, \
}
Definition at line 355 of file cbs_internal.h.
◆ CBS_UNIT_TYPE_INTERNAL_REF
#define CBS_UNIT_TYPE_INTERNAL_REF
(
type,
structure,
ref_field
◆ CBS_UNIT_RANGE_INTERNAL_REF
#define CBS_UNIT_RANGE_INTERNAL_REF
(
range_start,
range_end,
structure,
ref_field
)
Value: { \
.unit_type.range.start = range_start, \
.unit_type.range.end = range_end, \
.content_size = sizeof(structure), \
.
type.ref = { .nb_offsets = 1, \
.offsets = { offsetof(structure, ref_field) } }, \
}
Definition at line 366 of file cbs_internal.h.
◆ CBS_UNIT_TYPES_COMPLEX
#define CBS_UNIT_TYPES_COMPLEX
(
types,
structure,
free_func
)
Value: { \
.content_size = sizeof(structure), \
.
type.complex = { .content_free = free_func }, \
}
Definition at line 376 of file cbs_internal.h.
◆ CBS_UNIT_TYPE_COMPLEX
#define CBS_UNIT_TYPE_COMPLEX
(
type,
structure,
free_func
◆ CBS_UNIT_TYPE_END_OF_LIST
#define CBS_UNIT_TYPE_END_OF_LIST { .nb_unit_types = 0 }
Enumeration Type Documentation
◆ CBSContentType
| Enumerator |
|---|
| CBS_CONTENT_TYPE_INTERNAL_REFS |
| CBS_CONTENT_TYPE_COMPLEX |
Definition at line 73 of file cbs_internal.h.
◆ anonymous enum
| Enumerator |
|---|
| CBS_MAX_LIST_UNIT_TYPES |
| CBS_MAX_REF_OFFSETS |
| CBS_UNIT_TYPE_RANGE |
Definition at line 83 of file cbs_internal.h.
Function Documentation
◆ trace_header()
◆ read_unsigned()
int
width,
const char *
name,
const int *
subscripts,
uint32_t *
write_to,
uint32_t
range_min,
uint32_t
range_max
)
◆ read_simple_unsigned()
int
width,
const char *
name,
uint32_t *
write_to
)
◆ write_unsigned()
int
width,
const char *
name,
const int *
subscripts,
uint32_t
value,
uint32_t
range_min,
uint32_t
range_max
)
◆ write_simple_unsigned()
int
width,
const char *
name,
uint32_t
value
)
◆ read_signed()
int
width,
const char *
name,
const int *
subscripts,
)
◆ write_signed()
int
width,
const char *
name,
const int *
subscripts,
)
◆ CBS_FUNC() [1/9]
◆ CBS_FUNC() [2/9]
◆ CBS_FUNC() [3/9]
◆ CBS_FUNC() [4/9]
◆ CBS_FUNC() [5/9]
◆ CBS_FUNC() [6/9]
◆ CBS_FUNC() [7/9]
◆ CBS_FUNC() [8/9]
◆ CBS_FUNC() [9/9]