|
FFmpeg
|
#include <stddef.h>#include <stdint.h>#include "libavutil/buffer.h"#include "cbs.h"#include "sei.h"Go to the source code of this file.
Data Structures | |
| struct | SEIRawFillerPayload |
| struct | SEIRawUserDataRegistered |
| struct | SEIRawUserDataUnregistered |
| struct | SEIRawMasteringDisplayColourVolume |
| struct | SEIRawContentLightLevelInfo |
| struct | SEIRawAlternativeTransferCharacteristics |
| struct | SEIRawMessage |
| struct | SEIRawMessageList |
| struct | SEIMessageState |
| struct | SEIMessageTypeDescriptor |
Macros | |
| #define | SEI_MESSAGE_RW(codec, name) |
| #define | SEI_MESSAGE_TYPE_END { .type = -1 } |
Typedefs | |
| typedef int(* | SEIMessageReadFunction) (CodedBitstreamContext *ctx, struct GetBitContext *rw, void *current, SEIMessageState *sei) |
| typedef int(* | SEIMessageWriteFunction) (CodedBitstreamContext *ctx, struct PutBitContext *rw, void *current, SEIMessageState *sei) |
Functions | |
| const SEIMessageTypeDescriptor * | ff_cbs_sei_find_type (CodedBitstreamContext *ctx, int payload_type) |
| Find the type descriptor for the given payload type. More... | |
| int | ff_cbs_sei_alloc_message_payload (SEIRawMessage *message, const SEIMessageTypeDescriptor *desc) |
| Allocate a new payload for the given SEI message. More... | |
| int | ff_cbs_sei_list_add (SEIRawMessageList *list) |
| Allocate a new empty SEI message in a message list. More... | |
| void | ff_cbs_sei_free_message_list (SEIRawMessageList *list) |
| Free all SEI messages in a message list. More... | |
| 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. More... | |
| 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. More... | |
| 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. More... | |
| #define SEI_MESSAGE_RW | ( | codec, | |
| name | |||
| ) |
| typedef int(* SEIMessageReadFunction) (CodedBitstreamContext *ctx, struct GetBitContext *rw, void *current, SEIMessageState *sei) |
| typedef int(* SEIMessageWriteFunction) (CodedBitstreamContext *ctx, struct PutBitContext *rw, void *current, SEIMessageState *sei) |
| const SEIMessageTypeDescriptor* ff_cbs_sei_find_type | ( | CodedBitstreamContext * | ctx, |
| int | payload_type | ||
| ) |
Find the type descriptor for the given payload type.
Returns NULL if the payload type is not known.
Definition at line 1640 of file cbs_h2645.c.
Referenced by ff_cbs_sei_add_message(), and message().
| int ff_cbs_sei_alloc_message_payload | ( | SEIRawMessage * | message, |
| const SEIMessageTypeDescriptor * | desc | ||
| ) |
| int ff_cbs_sei_list_add | ( | SEIRawMessageList * | list | ) |
Allocate a new empty SEI message in a message list.
The new message is in place nb_messages - 1.
Definition at line 74 of file cbs_sei.c.
Referenced by ff_cbs_sei_add_message(), and message_list().
| void ff_cbs_sei_free_message_list | ( | SEIRawMessageList * | list | ) |
Free all SEI messages in a message list.
Definition at line 99 of file cbs_sei.c.
Referenced by cbs_h264_free_sei(), and cbs_h265_free_sei().
| 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.
Will add to an existing SEI NAL unit, or create a new one for the message if there is no suitable existing one.
Takes a new reference to payload_buf, if set. If payload_buf is NULL then the new message will not be reference counted.
Definition at line 247 of file cbs_sei.c.
Referenced by h264_metadata_handle_display_orientation(), h264_metadata_update_fragment(), vaapi_encode_h264_write_extra_header(), and vaapi_encode_h265_write_extra_header().
| 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.
Set message to NULL in the first call. Returns 0 while more messages are available, AVERROR(ENOENT) when all messages have been found.
Definition at line 297 of file cbs_sei.c.
Referenced by h264_metadata_handle_display_orientation().
| 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.
Definition at line 350 of file cbs_sei.c.
Referenced by h264_metadata_handle_display_orientation(), and h264_metadata_update_fragment().
1.8.17