|
VLC 4.0.0-dev
|
This file defines picture structures and functions in vlc. More...
Go to the source code of this file.
Data Structures | |
| struct | plane_t |
| Description of a planar graphic field. More... | |
| struct | picture_context_t |
| struct | picture_buffer_t |
| struct | vlc_video_context_operations |
| struct | picture_t |
| Video picture. More... | |
| struct | vlc_pic_chain |
| picture chaining helpers More... | |
| struct | picture_resource_t |
| Resource for a picture. More... | |
Macros | |
| #define | PICTURE_PLANE_MAX (VOUT_MAX_PLANES) |
| Maximum number of plane for a picture. | |
| #define | Y_PIXELS p[Y_PLANE].p_pixels |
| #define | Y_PITCH p[Y_PLANE].i_pitch |
| #define | U_PIXELS p[U_PLANE].p_pixels |
| #define | U_PITCH p[U_PLANE].i_pitch |
| #define | V_PIXELS p[V_PLANE].p_pixels |
| #define | V_PITCH p[V_PLANE].i_pitch |
| #define | A_PIXELS p[A_PLANE].p_pixels |
| #define | A_PITCH p[A_PLANE].i_pitch |
Typedefs | |
| typedef struct plane_t | plane_t |
| Description of a planar graphic field. | |
| typedef struct picture_context_t | picture_context_t |
| typedef struct picture_buffer_t | picture_buffer_t |
| typedef struct vlc_decoder_device | vlc_decoder_device |
| typedef struct vlc_video_context | vlc_video_context |
| typedef struct vlc_pic_chain | vlc_picture_chain_t |
| picture chaining helpers | |
Enumerations | |
| enum | vlc_video_context_type { VLC_VIDEO_CONTEXT_VAAPI = 1 , VLC_VIDEO_CONTEXT_VDPAU , VLC_VIDEO_CONTEXT_DXVA2 , VLC_VIDEO_CONTEXT_D3D11VA , VLC_VIDEO_CONTEXT_AWINDOW , VLC_VIDEO_CONTEXT_NVDEC , VLC_VIDEO_CONTEXT_CVPX , VLC_VIDEO_CONTEXT_MMAL , VLC_VIDEO_CONTEXT_GSTDECODE } |
| Decoder device type. More... | |
| enum | { Y_PLANE = 0 , U_PLANE = 1 , V_PLANE = 2 , A_PLANE = 3 } |
Functions | |
| vlc_video_context * | vlc_video_context_Create (vlc_decoder_device *, enum vlc_video_context_type private_type, size_t private_size, const struct vlc_video_context_operations *) |
| void | vlc_video_context_Release (vlc_video_context *) |
| enum vlc_video_context_type | vlc_video_context_GetType (const vlc_video_context *) |
| void * | vlc_video_context_GetPrivate (vlc_video_context *, enum vlc_video_context_type) |
| vlc_video_context * | vlc_video_context_Hold (vlc_video_context *) |
| vlc_decoder_device * | vlc_video_context_HoldDevice (vlc_video_context *) |
| Get the decoder device used by the device context. | |
| static vlc_video_context * | picture_GetVideoContext (picture_t *pic) |
| static bool | picture_HasChainedPics (const picture_t *pic) |
| Check whether a picture has other pictures linked. | |
| static void | vlc_picture_chain_Init (vlc_picture_chain_t *chain) |
| Initializes or reset a picture chain. | |
| static bool | vlc_picture_chain_IsEmpty (const vlc_picture_chain_t *chain) |
| Check whether a picture chain holds pictures or not. | |
| static bool | vlc_picture_chain_HasNext (const vlc_picture_chain_t *chain) |
| Check whether a picture chain has more than one picture. | |
| static picture_t * | vlc_picture_chain_PopFront (vlc_picture_chain_t *chain) |
| Pop the front of a picture chain. | |
| static picture_t * | vlc_picture_chain_PeekFront (vlc_picture_chain_t *chain) |
| Peek the front of a picture chain. | |
| static void | vlc_picture_chain_Append (vlc_picture_chain_t *chain, picture_t *pic) |
| Append a picture to a picture chain. | |
| static void | vlc_picture_chain_AppendChain (picture_t *chain, picture_t *tail) |
| Append a picture chain to a picture chain. | |
| static void | vlc_picture_chain_GetAndClear (vlc_picture_chain_t *in, vlc_picture_chain_t *out) |
| Copy the picture chain in another picture chain and clear the original picture chain. | |
| static vlc_picture_chain_t | picture_GetAndResetChain (picture_t *pic) |
| Reset a picture chain. | |
| picture_t * | picture_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. | |
| picture_t * | picture_NewFromFormat (const video_format_t *p_fmt) |
| This function will create a new picture using the given format. | |
| picture_t * | picture_NewFromResource (const video_format_t *, const picture_resource_t *) |
| This function will create a new picture using the provided resource. | |
| void | picture_Destroy (picture_t *picture) |
| Destroys a picture without references. | |
| static picture_t * | picture_Hold (picture_t *picture) |
| Increments the picture reference count. | |
| static void | picture_Release (picture_t *picture) |
| Decrements the picture reference count. | |
| void | picture_CopyProperties (picture_t *p_dst, const picture_t *p_src) |
| This function will copy all picture dynamic properties. | |
| void | picture_Reset (picture_t *) |
| This function will reset a picture information (properties and quantizers). | |
| void | picture_CopyPixels (picture_t *p_dst, const picture_t *p_src) |
| This function will copy the picture pixels. | |
| void | plane_CopyPixels (plane_t *p_dst, const plane_t *p_src) |
| void | picture_Copy (picture_t *p_dst, const picture_t *p_src) |
| This function will copy both picture dynamic properties and pixels. | |
| picture_t * | picture_Clone (picture_t *pic) |
| 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_ancillary * | picture_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. | |
| int | picture_Setup (picture_t *, const video_format_t *) |
| This function will setup all fields of a picture_t without allocating any memory. | |
| static void | picture_SwapUV (picture_t *picture) |
| Swap UV planes of a Tri Planars picture. | |
This file defines picture structures and functions in vlc.