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()

static void free_side_data_entry ( AVFrameSideData ** ptr_sd)
static

◆ remove_side_data_by_entry()

static 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()

static 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()

static 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().