19 #ifndef AVCODEC_CBS_SEI_H 20 #define AVCODEC_CBS_SEI_H 51 uint16_t display_primaries_x[3];
52 uint16_t display_primaries_y[3];
131 #define SEI_MESSAGE_RW(codec, name) \ 132 .read = (SEIMessageReadFunction) cbs_ ## codec ## _read_ ## name, \ 133 .write = (SEIMessageWriteFunction)cbs_ ## codec ## _write_ ## name 136 #define SEI_MESSAGE_TYPE_END { .type = -1 } 177 uint32_t payload_type,
189 uint32_t payload_type,
197 uint32_t payload_type);
uint32_t max_display_mastering_luminance
int ff_cbs_sei_list_add(SEIRawMessageList *list)
Allocate a new empty SEI message in a message list.
void ff_cbs_sei_delete_message_type(CodedBitstreamContext *ctx, CodedBitstreamFragment *au, uint32_t payload_type)
Delete all messages with the given payload type from an access unit.
uint8_t itu_t_t35_country_code_extension_byte
uint8_t extension_present
int(* SEIMessageWriteFunction)(CodedBitstreamContext *ctx, struct PutBitContext *rw, void *current, SEIMessageState *sei)
AVBufferRef * extension_data_ref
uint16_t max_pic_average_light_level
SEIMessageReadFunction read
int ff_cbs_sei_alloc_message_payload(SEIRawMessage *message, const SEIMessageTypeDescriptor *desc)
Allocate a new payload for the given SEI message.
SEIMessageWriteFunction write
uint8_t preferred_transfer_characteristics
AVBufferRef * payload_ref
const SEIMessageTypeDescriptor * ff_cbs_sei_find_type(CodedBitstreamContext *ctx, int payload_type)
Find the type descriptor for the given payload type.
Coded bitstream fragment structure, combining one or more units.
Filter the word “frame” indicates either a video frame or a group of audio as stored in an AVFrame structure Format for each input and each output the list of supported formats For video that means pixel format For audio that means channel sample they are references to shared objects When the negotiation mechanism computes the intersection of the formats supported at each end of a all references to both lists are replaced with a reference to the intersection And when a single format is eventually chosen for a link amongst the remaining list
int nb_messages_allocated
void ff_cbs_sei_free_message_list(SEIRawMessageList *list)
Free all SEI messages in a message list.
Context structure for coded bitstream operations.
uint32_t min_display_mastering_luminance
size_t extension_bit_length
refcounted data buffer API
uint8_t itu_t_t35_country_code
uint16_t max_content_light_level
A reference to a data buffer.
static int FUNC() sei(CodedBitstreamContext *ctx, RWContext *rw, H264RawSEI *current)
int ff_cbs_sei_find_message(CodedBitstreamContext *ctx, CodedBitstreamFragment *au, uint32_t payload_type, SEIRawMessage **message)
Iterate over messages with the given payload type in an access unit.
int ff_cbs_sei_add_message(CodedBitstreamContext *ctx, CodedBitstreamFragment *au, int prefix, uint32_t payload_type, void *payload_data, AVBufferRef *payload_buf)
Add an SEI message to an access unit.
int(* SEIMessageReadFunction)(CodedBitstreamContext *ctx, struct GetBitContext *rw, void *current, SEIMessageState *sei)