FFmpeg
Loading...
Searching...
No Matches
side_data.c File Reference
#include "avassert.h"
#include "buffer.h"
#include "common.h"
#include "dict.h"
#include "frame.h"
#include "mem.h"
#include "side_data.h"

Go to the source code of this file.

Functions

const AVSideDataDescriptorav_frame_side_data_desc (enum AVFrameSideDataType type)
const char * av_frame_side_data_name (enum AVFrameSideDataType type)
static void free_side_data_entry (AVFrameSideData **ptr_sd)
static void remove_side_data_by_entry (AVFrameSideData ***sd, int *nb_sd, const AVFrameSideData *target)
void av_frame_side_data_remove (AVFrameSideData ***sd, int *nb_sd, enum AVFrameSideDataType type)
 Remove and free all side data instances of the given type from an array.
void av_frame_side_data_remove_by_props (AVFrameSideData ***sd, int *nb_sd, int props)
 Remove and free all side data instances that match any of the given side data properties.
void av_frame_side_data_free (AVFrameSideData ***sd, int *nb_sd)
 Free all side data entries and their contents, then zeroes out the values which the pointers are pointing to.
static AVFrameSideDataadd_side_data_from_buf_ext (AVFrameSideData ***sd, int *nb_sd, enum AVFrameSideDataType type, AVBufferRef *buf, uint8_t *data, size_t size)
AVFrameSideDataff_frame_side_data_add_from_buf (AVFrameSideData ***sd, int *nb_sd, enum AVFrameSideDataType type, AVBufferRef *buf)
static AVFrameSideDatareplace_side_data_from_buf (AVFrameSideData *dst, AVBufferRef *buf, int flags)
AVFrameSideDataav_frame_side_data_new (AVFrameSideData ***sd, int *nb_sd, enum AVFrameSideDataType type, size_t size, unsigned int flags)
 Add new side data entry to an array.
AVFrameSideDataav_frame_side_data_add (AVFrameSideData ***sd, int *nb_sd, enum AVFrameSideDataType type, AVBufferRef **pbuf, unsigned int flags)
 Add a new side data entry to an array from an existing AVBufferRef.
int av_frame_side_data_clone (AVFrameSideData ***sd, int *nb_sd, const AVFrameSideData *src, unsigned int flags)
 Add a new side data entry to an array based on existing side data, taking a reference towards the contained AVBufferRef.
const AVFrameSideDataav_frame_side_data_get_c (const AVFrameSideData *const *sd, const int nb_sd, enum AVFrameSideDataType type)
 Get a side data entry of a specific type from an array.

Variables

static const AVSideDataDescriptor sd_props []

Function Documentation

◆ free_side_data_entry()

void free_side_data_entry ( AVFrameSideData ** ptr_sd)
static

◆ remove_side_data_by_entry()

void remove_side_data_by_entry ( AVFrameSideData *** sd,
int * nb_sd,
const AVFrameSideData * target )
static

Definition at line 91 of file side_data.c.

Referenced by av_frame_side_data_clone().

◆ add_side_data_from_buf_ext()

AVFrameSideData * add_side_data_from_buf_ext ( AVFrameSideData *** sd,
int * nb_sd,
enum AVFrameSideDataType type,
AVBufferRef * buf,
uint8_t * data,
size_t size )
static

Definition at line 148 of file side_data.c.

Referenced by av_frame_side_data_clone(), and ff_frame_side_data_add_from_buf().

◆ ff_frame_side_data_add_from_buf()

AVFrameSideData * ff_frame_side_data_add_from_buf ( AVFrameSideData *** sd,
int * nb_sd,
enum AVFrameSideDataType type,
AVBufferRef * buf )

◆ replace_side_data_from_buf()

AVFrameSideData * replace_side_data_from_buf ( AVFrameSideData * dst,
AVBufferRef * buf,
int flags )
static

Definition at line 190 of file side_data.c.

Referenced by av_frame_side_data_add(), and av_frame_side_data_new().

Variable Documentation

◆ sd_props

const AVSideDataDescriptor sd_props[]
static

Definition at line 27 of file side_data.c.

Referenced by av_frame_side_data_desc().