Collaboration diagram for vout_thread_t:

Data Fields | |
| picture_t | p_picture [2 *8+1] |
| pictures | |
| spu_t * | p_spu |
| count_t | c_loops |
| count_t | c_pictures |
| count_t | c_late_pictures |
| mtime_t | display_jitter |
| average deviation from the PTS | |
| count_t | c_jitter_samples |
| number of samples used for the calculation of the jitter | |
| int | i_pts_delay |
| delay created by internal caching | |
| char * | psz_filter_chain |
| bool | b_filter_change |
| filter_chain_t * | p_vf2_chain |
| char * | psz_vf2 |
| bool | b_snapshot |
| take one snapshot on the next loop | |
| config_chain_t * | p_cfg |
| bool | b_title_show |
| mtime_t | i_title_timeout |
| int | i_title_position |
VLC_COMMON_MEMBERS these members are common for all vlc objects | |
| int | i_object_id |
| int | i_object_type |
| const char * | psz_object_type |
| char * | psz_object_name |
| char * | psz_header |
| int | i_flags |
| volatile bool | b_error |
| set by the object | |
| volatile bool | b_die |
| set by the outside | |
| volatile bool | b_dead |
| set by the object | |
| bool | b_force |
| set by the outside (eg. | |
| libvlc_int_t * | p_libvlc |
| (root of all evil) - 1 | |
| vlc_object_t * | p_parent |
| our parent | |
| void * | p_private |
| int | be_sure_to_add_VLC_COMMON_MEMBERS_to_struct |
| Just a reminder so that people don't cast garbage. | |
Thread properties and locks | |
| vlc_mutex_t | picture_lock |
| picture heap lock | |
| vlc_mutex_t | subpicture_lock |
| subpicture heap lock | |
| vlc_mutex_t | change_lock |
| thread change lock | |
| vlc_mutex_t | vfilter_lock |
| video filter2 change lock | |
| vout_sys_t * | p_sys |
| system output method | |
Current display properties | |
| uint16_t | i_changes |
| changes made to the thread. | |
| float | f_gamma |
| gamma | |
| bool | b_grayscale |
| color or grayscale display | |
| bool | b_info |
| print additional information | |
| bool | b_interface |
| render interface | |
| bool | b_scale |
| allow picture scaling | |
| bool | b_fullscreen |
| toogle fullscreen display | |
| uint32_t | render_time |
| last picture render time | |
| unsigned int | i_window_width |
| video window width | |
| unsigned int | i_window_height |
| video window height | |
| unsigned int | i_alignment |
| video alignment in window | |
| unsigned int | i_par_num |
| monitor pixel aspect-ratio | |
| unsigned int | i_par_den |
| monitor pixel aspect-ratio | |
| vout_window_t * | p_window |
| window for embedded vout (if any) | |
Plugin used and shortcuts to access its capabilities | |
| module_t * | p_module |
| int(* | pf_init )(vout_thread_t *) |
| void(* | pf_end )(vout_thread_t *) |
| int(* | pf_manage )(vout_thread_t *) |
| void(* | pf_render )(vout_thread_t *, picture_t *) |
| void(* | pf_display )(vout_thread_t *, picture_t *) |
| void(* | pf_swap )(vout_thread_t *) |
| int(* | pf_lock )(vout_thread_t *) |
| void(* | pf_unlock )(vout_thread_t *) |
| int(* | pf_control )(vout_thread_t *, int, va_list) |
Statistics | |
These numbers are not supposed to be accurate, but are a good indication of the thread status | |
| count_t | c_fps_samples |
| picture counts | |
| mtime_t | p_fps_sample [20] |
| FPS samples dates. | |
Video heap and translation tables | |
| int | i_heap_size |
| heap size | |
| picture_heap_t | render |
| rendered pictures | |
| picture_heap_t | output |
| direct buffers | |
| bool | b_direct |
| rendered are like direct ? | |
| filter_t * | p_chroma |
| translation tables | |
| video_format_t | fmt_render |
| video_format_t | fmt_in |
| video_format_t | fmt_out |
Any independent video output device, such as an X11 window or a GGI device, is represented by a video output thread, and described using the following structure.
| const char* vout_thread_t::psz_object_type |
| volatile bool vout_thread_t::b_error |
set by the object
| volatile bool vout_thread_t::b_die |
set by the outside
| volatile bool vout_thread_t::b_dead |
set by the object
set by the outside (eg.
(root of all evil) - 1
our parent
| void* vout_thread_t::p_private |
Just a reminder so that people don't cast garbage.
| vlc_mutex_t vout_thread_t::picture_lock |
picture heap lock
| vlc_mutex_t vout_thread_t::subpicture_lock |
subpicture heap lock
| vlc_mutex_t vout_thread_t::change_lock |
thread change lock
| vlc_mutex_t vout_thread_t::vfilter_lock |
video filter2 change lock
system output method
| uint16_t vout_thread_t::i_changes |
| float vout_thread_t::f_gamma |
gamma
color or grayscale display
print additional information
render interface
allow picture scaling
toogle fullscreen display
| uint32_t vout_thread_t::render_time |
last picture render time
| unsigned int vout_thread_t::i_window_width |
video window width
| unsigned int vout_thread_t::i_window_height |
video window height
| unsigned int vout_thread_t::i_alignment |
video alignment in window
| unsigned int vout_thread_t::i_par_num |
monitor pixel aspect-ratio
| unsigned int vout_thread_t::i_par_den |
monitor pixel aspect-ratio
| struct vout_window_t* vout_thread_t::p_window |
window for embedded vout (if any)
| int( * vout_thread_t::pf_init)(vout_thread_t *) |
| void( * vout_thread_t::pf_end)(vout_thread_t *) |
| int( * vout_thread_t::pf_manage)(vout_thread_t *) |
| void( * vout_thread_t::pf_render)(vout_thread_t *, picture_t *) |
| void( * vout_thread_t::pf_display)(vout_thread_t *, picture_t *) |
| void( * vout_thread_t::pf_swap)(vout_thread_t *) |
| int( * vout_thread_t::pf_lock)(vout_thread_t *) |
| void( * vout_thread_t::pf_unlock)(vout_thread_t *) |
| int( * vout_thread_t::pf_control)(vout_thread_t *, int, va_list) |
picture counts
FPS samples dates.
heap size
rendered pictures
direct buffers
rendered are like direct ?
translation tables
| picture_t vout_thread_t::p_picture[2 *8+1] |
pictures
average deviation from the PTS
number of samples used for the calculation of the jitter
delay created by internal caching
| char* vout_thread_t::psz_vf2 |
take one snapshot on the next loop
1.5.1