picture_t Struct Reference

Video picture. More...

Collaboration diagram for picture_t:

Collaboration graph
[legend]

Data Fields

video_frame_format_t format
 The properties of the picture.
uint8_t * p_data
 Picture data - data can always be freely modified, but p_data may NEVER be modified.
void * p_data_orig
 pointer before memalign
plane_t p [5]
 description of the planes
int i_planes
 number of allocated planes
picture_heap_tp_heap
 The picture heap we are attached to.
int(* pf_lock )(vout_thread_t *, picture_t *)
int(* pf_unlock )(vout_thread_t *, picture_t *)
picture_sys_tp_sys
 Private data - the video output plugin might want to put stuff here to keep track of the picture.
void(* pf_release )(picture_t *)
 This way the picture_Release can be overloaded.
picture_tp_next
 Next picture in a FIFO a pictures.
Type and flags
Should NOT be modified except by the vout thread

int i_status
 picture flags
int i_type
 is picture a direct buffer ?
bool b_slow
 is picture in slow memory ?
int i_matrix_coefficients
 in YUV type, encoding type
Picture management properties
These properties can be modified using the video output thread API, but should never be written directly

unsigned i_refcount
 link reference counter
mtime_t date
 display date
bool b_force
Picture dynamic properties
Those properties can be changed by the decoder

bool b_progressive
 is it a progressive frame ?
unsigned int i_nb_fields
 # of displayed fields
bool b_top_field_first
 which field is first

Detailed Description

Video picture.

Any picture destined to be displayed by a video output thread should be stored in this structure from it's creation to it's effective display. Picture type and flags should only be modified by the output thread. Note that an empty picture MUST have its flags set to 0.


Field Documentation

video_frame_format_t picture_t::format

The properties of the picture.


The documentation for this struct was generated from the following file:
Generated on Wed Aug 13 09:36:24 2008 for VLC by  doxygen 1.5.1