
Go to the source code of this file.
Data Structures | |
| struct | picture_heap_t |
| Video picture heap, either render (to store pictures used by the decoder) or output (to store pictures displayed by the vout plugin). More... | |
| struct | vout_thread_t |
| Video output thread descriptor. More... | |
Defines | |
| #define | VLC_VOUT_H_ 1 |
| #define | vout_AllocatePicture(a, b, c, d, e, f) __vout_AllocatePicture(VLC_OBJECT(a),b,c,d,e,f) |
| Initialise different fields of a picture_t and allocates the picture buffer. | |
| #define | I_OUTPUTPICTURES p_vout->output.i_pictures |
| #define | PP_OUTPUTPICTURE p_vout->output.pp_picture |
| #define | I_RENDERPICTURES p_vout->render.i_pictures |
| #define | PP_RENDERPICTURE p_vout->render.pp_picture |
| #define | VOUT_INFO_CHANGE 0x0001 |
| b_info changed | |
| #define | VOUT_INTF_CHANGE 0x0004 |
| b_interface changed | |
| #define | VOUT_SCALE_CHANGE 0x0008 |
| b_autoscale changed | |
| #define | VOUT_ON_TOP_CHANGE 0x0010 |
| b_on_top changed | |
| #define | VOUT_CURSOR_CHANGE 0x0020 |
| b_cursor changed | |
| #define | VOUT_FULLSCREEN_CHANGE 0x0040 |
| b_fullscreen changed | |
| #define | VOUT_ZOOM_CHANGE 0x0080 |
| i_zoom changed | |
| #define | VOUT_SIZE_CHANGE 0x0200 |
| size changed | |
| #define | VOUT_DEPTH_CHANGE 0x0400 |
| depth changed | |
| #define | VOUT_CHROMA_CHANGE 0x0800 |
| change chroma tables | |
| #define | VOUT_CROP_CHANGE 0x1000 |
| cropping parameters changed | |
| #define | VOUT_ASPECT_CHANGE 0x2000 |
| aspect ratio changed | |
| #define | VOUT_PICTURE_BUFFERS_CHANGE 0x4000 |
| change/recreate picture buffers | |
| #define | VOUT_ALIGN_LEFT 0x0001 |
| #define | VOUT_ALIGN_RIGHT 0x0002 |
| #define | VOUT_ALIGN_HMASK 0x0003 |
| #define | VOUT_ALIGN_TOP 0x0004 |
| #define | VOUT_ALIGN_BOTTOM 0x0008 |
| #define | VOUT_ALIGN_VMASK 0x000C |
| #define | MAX_JITTER_SAMPLES 20 |
| #define | ZOOM_FP_FACTOR 1000 |
| #define | vout_Request(a, b, c) __vout_Request(VLC_OBJECT(a),b,c) |
This function will
| |
| #define | vout_Create(a, b) __vout_Create(VLC_OBJECT(a),b) |
| This function will create a suitable vout for a given p_fmt. | |
Typedefs | |
| typedef struct vout_thread_sys_t | vout_thread_sys_t |
| Video ouput thread private structure. | |
Enumerations | |
| enum | output_query_e { VOUT_SET_SIZE, VOUT_SET_STAY_ON_TOP, VOUT_SET_VIEWPORT, VOUT_REDRAW_RECT } |
Functions | |
| int | __vout_AllocatePicture (vlc_object_t *p_this, picture_t *p_pic, uint32_t i_chroma, int i_width, int i_height, int i_aspect) |
| Allocate a new picture in the heap. | |
| vout_thread_t * | __vout_Request (vlc_object_t *p_this, vout_thread_t *p_vout, video_format_t *p_fmt) |
| vout_thread_t * | __vout_Create (vlc_object_t *p_this, video_format_t *p_fmt) |
| void | vout_Close (vout_thread_t *p_vout) |
| This function will close a vout created by vout_Create or vout_Request. | |
| static void | vout_CloseAndRelease (vout_thread_t *p_vout) |
| This function will close a vout created by vout_Create and then release it. | |
| int | vout_GetSnapshot (vout_thread_t *p_vout, block_t **pp_image, picture_t **pp_picture, video_format_t *p_fmt, const char *psz_format, mtime_t i_timeout) |
| This function will handle a snapshot request. | |
| int | vout_ChromaCmp (uint32_t, uint32_t) |
| Compare two chroma values. | |
| picture_t * | vout_CreatePicture (vout_thread_t *, bool, bool, unsigned int) |
| void | vout_DestroyPicture (vout_thread_t *, picture_t *) |
| Remove a permanent or reserved picture from the heap. | |
| void | vout_DisplayPicture (vout_thread_t *, picture_t *) |
| Display a picture. | |
| void | vout_LinkPicture (vout_thread_t *, picture_t *) |
| Increment reference counter of a picture. | |
| void | vout_UnlinkPicture (vout_thread_t *, picture_t *) |
| Decrement reference counter of a picture. | |
| void | vout_PlacePicture (const vout_thread_t *, unsigned int, unsigned int, unsigned int *, unsigned int *, unsigned int *, unsigned int *) |
| spu_t * | vout_GetSpu (vout_thread_t *) |
| Return the spu_t object associated to a vout_thread_t. | |
| void | vout_IntfInit (vout_thread_t *) |
| void | vout_EnableFilter (vout_thread_t *, const char *, bool, bool) |
| static int | vout_vaControl (vout_thread_t *p_vout, int i_query, va_list args) |
| static int | vout_Control (vout_thread_t *p_vout, int i_query,...) |
| #define VLC_VOUT_H_ 1 |
| #define vout_AllocatePicture | ( | a, | |||
| b, | |||||
| c, | |||||
| d, | |||||
| e, | |||||
| f | ) | __vout_AllocatePicture(VLC_OBJECT(a),b,c,d,e,f) |
Initialise different fields of a picture_t and allocates the picture buffer.
| p_this | a vlc object | |
| p_pic | pointer to the picture structure. | |
| i_chroma | the wanted chroma for the picture. | |
| i_width | the wanted width for the picture. | |
| i_height | the wanted height for the picture. | |
| i_aspect | the wanted aspect ratio for the picture. |
Referenced by exec_DataSharedMem(), Init(), vout_CreatePicture(), vout_filter_AllocateDirectBuffers(), and vout_RenderPicture().
| int __vout_AllocatePicture | ( | vlc_object_t * | p_this, | |
| picture_t * | p_pic, | |||
| vlc_fourcc_t | i_chroma, | |||
| int | i_width, | |||
| int | i_height, | |||
| int | i_aspect | |||
| ) |
Allocate a new picture in the heap.
This function allocates a fake direct buffer in memory, which can be used exactly like a video buffer. The video output thread then manages how it gets displayed.
References picture_t::format, video_format_t::i_bits_per_pixel, plane_t::i_lines, plane_t::i_pitch, picture_t::i_planes, picture_t::p, picture_t::p_data, picture_t::p_data_orig, plane_t::p_pixels, picture_Setup(), VLC_EGENERIC, VLC_ENOMEM, vlc_memalign(), VLC_SUCCESS, and VLC_UNUSED.
Referenced by picture_NewFromResource().
1.5.6