VLC 4.0.0-dev
Loading...
Searching...
No Matches
picture.c File Reference
Include dependency graph for picture.c:

Data Structures

struct  picture_priv_buffer_t

Macros

#define PICTURE_SW_SIZE_MAX   (UINT32_C(1) << 28) /* 256MB: 8K * 8K * 4*/

Functions

static void PictureDestroyContext (picture_t *p_picture)
static void picture_DestroyDummy (picture_t *p_picture)
 Destroys a picture allocated by picture_NewFromResource() but without a custom destruction callback.
static void picture_DestroyFromFormat (picture_t *pic)
 Destroys a picture allocated with picture_NewFromFormat().
void * picture_Allocate (int *restrict fdp, size_t size)
void picture_Deallocate (int fd, void *base, size_t size)
void picture_Reset (picture_t *p_picture)
 This function will reset a picture information (properties and quantizers).
static int LCM (int a, int b)
int picture_Setup (picture_t *p_picture, const video_format_t *restrict fmt)
static bool picture_InitPrivate (const video_format_t *restrict p_fmt, picture_priv_t *priv, const picture_resource_t *p_resource)
picture_tpicture_NewFromResource (const video_format_t *p_fmt, const picture_resource_t *p_resource)
 This function will create a new picture using the provided resource.
picture_tpicture_NewFromFormat (const video_format_t *restrict fmt)
picture_tpicture_New (vlc_fourcc_t i_chroma, int i_width, int i_height, int i_sar_num, int i_sar_den)
 This function will create a new picture.
void picture_Destroy (picture_t *picture)
 Destroys a picture without references.
void plane_CopyPixels (plane_t *p_dst, const plane_t *p_src)
void picture_CopyProperties (picture_t *p_dst, const picture_t *p_src)
 This function will copy all picture dynamic properties.
void picture_CopyPixels (picture_t *p_dst, const picture_t *p_src)
 This function will copy the picture pixels.
void picture_Copy (picture_t *p_dst, const picture_t *p_src)
 This function will copy both picture dynamic properties and pixels.
static void picture_DestroyClone (picture_t *clone)
picture_tpicture_InternalClone (picture_t *picture, void(*pf_destroy)(picture_t *), void *opaque)
picture_tpicture_Clone (picture_t *picture)
 Perform a shallow picture copy.
int picture_MergeAncillaries (picture_t *pic, const vlc_ancillary_array *src_array)
 Merge two ancillary arrays.
int picture_MergeAndClearAncillaries (picture_t *pic, vlc_ancillary_array *src_array)
 Merge and clear two ancillary arrays.
int picture_AttachAncillary (picture_t *pic, struct vlc_ancillary *ancillary)
 Attach an ancillary to the picture.
void * picture_AttachNewAncillary (picture_t *pic, vlc_ancillary_id id, size_t size)
 Allocate a new ancillary and attach it to a picture.
struct vlc_ancillarypicture_GetAncillary (const picture_t *pic, vlc_ancillary_id id)
 Return the ancillary identified by an ID.
int picture_Export (vlc_object_t *p_obj, block_t **pp_image, video_format_t *p_fmt, picture_t *p_picture, vlc_fourcc_t i_codec, int i_override_width, int i_override_height, bool b_crop)
 This function will export a picture to an encoded bitstream.

Macro Definition Documentation

◆ PICTURE_SW_SIZE_MAX

#define PICTURE_SW_SIZE_MAX   (UINT32_C(1) << 28) /* 256MB: 8K * 8K * 4*/

Referenced by picture_NewFromFormat().

Function Documentation

◆ LCM()

int LCM ( int a,
int b )
static

References GCD().

Referenced by picture_Setup().

◆ picture_Allocate()

void * picture_Allocate ( int *restrict fdp,
size_t size )

References aligned_alloc(), and VLC_WEAK.

Referenced by picture_NewFromFormat().

◆ picture_Deallocate()

void picture_Deallocate ( int fd,
void * base,
size_t size )

References aligned_free, and VLC_WEAK.

Referenced by picture_DestroyFromFormat().

◆ picture_DestroyClone()

void picture_DestroyClone ( picture_t * clone)
static

◆ picture_DestroyDummy()

void picture_DestroyDummy ( picture_t * p_picture)
static

Destroys a picture allocated by picture_NewFromResource() but without a custom destruction callback.

Referenced by picture_InitPrivate().

◆ picture_DestroyFromFormat()

void picture_DestroyFromFormat ( picture_t * pic)
static

◆ picture_InitPrivate()

◆ picture_InternalClone()

◆ picture_NewFromFormat()

◆ picture_Setup()

◆ PictureDestroyContext()

void PictureDestroyContext ( picture_t * p_picture)
static