VLC  4.0.0-dev
Data Fields
Collaboration diagram for vout_display_t:
Collaboration graph

Data Fields

struct vlc_object_t obj
const vout_display_cfg_tcfg
 User configuration. More...
video_format_t source
 Source video format. More...
video_format_t fmt
 Picture format. More...
vout_display_info_t info
void(* prepare )(vout_display_t *, picture_t *pic, subpicture_t *subpic, vlc_tick_t date)
 Prepares a picture and an optional subpicture for display (optional). More...
void(* display )(vout_display_t *, picture_t *pic)
 Displays a picture. More...
int(* control )(vout_display_t *, int query, va_list)
 Performs a control request (mandatory). More...
void(* close )(vout_display_t *)
 Destroys the display. More...
 Private data for the display module. More...
vout_display_owner_t owner

Field Documentation

◆ cfg

const vout_display_cfg_t* vout_display_t::cfg

◆ close

void(* vout_display_t::close) (vout_display_t *)

Destroys the display.

Referenced by vout_display_Delete(), and vout_display_New().

◆ control

int(* vout_display_t::control) (vout_display_t *, int query, va_list)

Performs a control request (mandatory).

queryrequest type

See vout_display_query for the list of request types.

Referenced by vout_display_Control(), and vout_display_New().

◆ display

void(* vout_display_t::display) (vout_display_t *, picture_t *pic)

Displays a picture.

This callback is invoked at the time when the picture should be shown. The picture must be displayed as soon as possible.

The picture buffers may have multiple references. Therefore the pixel content of the picture or of the subpicture must not be changed.

Referenced by vout_display_Display(), and vout_display_New().

◆ fmt

video_format_t vout_display_t::fmt

Picture format.

This is the format of the pictures that are supplied to the prepare and display callbacks. Ideally, it should be identical or as close as possible as source.

This can only be changed from the display module activation callback, or within a VOUT_DISPLAY_RESET_PICTURES control request.

By default, it is equal to ::source except for the aspect ratio which is undefined(0) and is ignored.

Referenced by ThreadDisplayRenderPicture(), VideoBufferNew(), vout_display_Delete(), vout_display_New(), vout_display_Reset(), vout_display_start(), vout_GetPool(), vout_OpenWrapper(), and VoutDisplayCreateRender().

◆ info

vout_display_info_t vout_display_t::info

◆ obj

struct vlc_object_t vout_display_t::obj

Referenced by vout_display_start().

◆ owner

vout_display_owner_t vout_display_t::owner

◆ prepare

void(* vout_display_t::prepare) (vout_display_t *, picture_t *pic, subpicture_t *subpic, vlc_tick_t date)

Prepares a picture and an optional subpicture for display (optional).

This callback is called once a picture buffer content is ready, as far in advance as possible to the intended display time, but only after the previous picture was displayed.

The callback should perform any preprocessing operation that will not actually cause the picture to be shown, such as blending the subpicture or upload the picture to video memory. If supported, this can also queue the picture to be shown asynchronously at the given date.

If prepare is not NULL, there is an implicit guarantee that display will be invoked with the exact same picture afterwards: prepare 1st picture, display 1st picture, prepare 2nd picture, display 2nd picture, and so on.

The picture buffers may have multiple references. Therefore the pixel content of the picture or of the subpicture must not be changed.
subpicsubpicture to render over the picture
datetime when the picture is intended to be shown

Referenced by ThreadDisplayRenderPicture(), vout_display_New(), and vout_display_Prepare().

◆ source

video_format_t vout_display_t::source

Source video format.

This is the format of the video that is being displayed (after decoding and filtering). It cannot be modified.

Cropping is not requested while in the open function.

Referenced by ThreadDisplayRenderPicture(), vout_display_Delete(), vout_display_New(), vout_display_start(), vout_display_TranslateMouseState(), vout_OpenWrapper(), vout_SetSourceAspect(), vout_UpdateSourceCrop(), and VoutDisplayCreateRender().

◆ sys

vout_display_sys_t* vout_display_t::sys

Private data for the display module.

A module is free to use it as it wishes.

Referenced by vout_display_New().

The documentation for this struct was generated from the following file: