FFmpeg
Data Structures | Macros | Typedefs | Functions
cbs_sei.h File Reference
#include <stddef.h>
#include <stdint.h>
#include "cbs.h"
#include "sei.h"

Go to the source code of this file.

Data Structures

 
 
 
 
 
 
 
 
 
struct   SEIRawMessage
 
struct   SEIRawMessageList
 
struct   SEIMessageState
 
 

Macros

#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

  Find the type descriptor for the given payload type. More...
 
  Allocate a new payload for the given SEI message. More...
 
  Allocate a new empty SEI message in a message list. More...
 
  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, void *payload_ref)
  Add an SEI message to an access unit. More...
 
  Iterate over messages with the given payload type in an access unit. More...
 
  Delete all messages with the given payload type from an access unit. More...
 

Macro Definition Documentation

SEI_MESSAGE_TYPE_END

#define SEI_MESSAGE_TYPE_END   { .type = -1 }

Definition at line 160 of file cbs_sei.h.

Typedef Documentation

SEIMessageReadFunction

typedef int(* SEIMessageReadFunction) (CodedBitstreamContext *ctx, struct GetBitContext *rw, void *current, SEIMessageState *sei)

Definition at line 134 of file cbs_sei.h.

SEIMessageWriteFunction

typedef int(* SEIMessageWriteFunction) (CodedBitstreamContext *ctx, struct PutBitContext *rw, void *current, SEIMessageState *sei)

Definition at line 139 of file cbs_sei.h.

Function Documentation

ff_cbs_sei_find_type()

const SEIMessageTypeDescriptor* ff_cbs_sei_find_type ( CodedBitstreamContextctx,
int  payload_type 
)

Find the type descriptor for the given payload type.

Returns NULL if the payload type is not known.

Definition at line 2313 of file cbs_h2645.c.

Referenced by ff_cbs_sei_add_message(), and message().

ff_cbs_sei_alloc_message_payload()

int ff_cbs_sei_alloc_message_payload ( SEIRawMessagemessage,
const SEIMessageTypeDescriptordesc 
)

Allocate a new payload for the given SEI message.

Definition at line 40 of file cbs_sei.c.

Referenced by message().

ff_cbs_sei_list_add()

int ff_cbs_sei_list_add ( SEIRawMessageListlist )

Allocate a new empty SEI message in a message list.

The new message is in place nb_messages - 1.

Definition at line 66 of file cbs_sei.c.

Referenced by ff_cbs_sei_add_message(), and message_list().

ff_cbs_sei_free_message_list()

void ff_cbs_sei_free_message_list ( SEIRawMessageListlist )

Free all SEI messages in a message list.

Definition at line 91 of file cbs_sei.c.

Referenced by cbs_h264_free_sei(), cbs_h265_free_sei(), and cbs_h266_free_sei().

ff_cbs_sei_add_message()

int ff_cbs_sei_add_message ( CodedBitstreamContextctx,
int  prefix,
uint32_t  payload_type,
void *  payload_data,
void *  payload_ref 
)

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.

If set, payload_ref must be a RefStruct reference backing payload_data. This function creates a new reference to payload_ref in this case. If payload_ref is NULL, the new message will not be reference counted.

Definition at line 267 of file cbs_sei.c.

Referenced by h264_metadata_handle_display_orientation(), h264_metadata_update_fragment(), vaapi_encode_h264_write_extra_header(), vaapi_encode_h265_write_extra_header(), and write_extra_headers().

ff_cbs_sei_find_message()

int ff_cbs_sei_find_message ( CodedBitstreamContextctx,
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 314 of file cbs_sei.c.

Referenced by h264_metadata_handle_display_orientation().

ff_cbs_sei_delete_message_type()

void ff_cbs_sei_delete_message_type ( CodedBitstreamContextctx,
uint32_t  payload_type 
)

Delete all messages with the given payload type from an access unit.

Definition at line 367 of file cbs_sei.c.

Referenced by h264_metadata_handle_display_orientation(), and h264_metadata_update_fragment().


Generated on Fri Aug 22 2025 13:59:51 for FFmpeg by   doxygen 1.8.17

AltStyle によって変換されたページ (->オリジナル) /