#define _VOUT_INTERNAL_H 1
#include "vout_control.h"
+#include "snapshot.h"
+#include "statistic.h"
/* Number of pictures required to computes the FPS rate */
#define VOUT_FPS_SAMPLES 20
/* */
struct vout_thread_sys_t
{
+ /* module */
+ const char *psz_module_type;
+ char *psz_module_name;
+
/* Thread & synchronization */
vlc_thread_t thread;
vlc_cond_t change_wait;
bool b_picture_empty;
mtime_t i_picture_displayed_date;
picture_t *p_picture_displayed;
+ int i_picture_qtype;
+ bool b_picture_interlaced;
vlc_cond_t picture_wait;
/* */
mtime_t p_fps_sample[VOUT_FPS_SAMPLES]; /**< FPS samples dates */
/* Statistics */
- int i_picture_lost;
- int i_picture_displayed;
+ vout_statistic_t statistic;
/* Pause */
bool b_paused;
mtime_t i_pause_date;
/* Filter chain */
+ bool b_first_vout; /* True if it is the first vout of the filter chain */
char *psz_filter_chain;
bool b_filter_change;
filter_chain_t *p_vf2_chain;
char *psz_vf2;
- /* Misc */
- bool b_snapshot; /**< take one snapshot on the next loop */
+ /* Snapshot interface */
+ vout_snapshot_t snapshot;
/* Show media title on videoutput */
bool b_title_show;
int i_title_position;
char *psz_title;
+
+ /* */
+ vlc_mouse_t mouse;
};
/* DO NOT use vout_RenderPicture unless you are in src/video_ouput */
picture_t *vout_RenderPicture( vout_thread_t *, picture_t *,
- subpicture_t *, bool b_paused );
+ subpicture_t *,
+ mtime_t render_date );
/* DO NOT use vout_UsePictureLocked unless you are in src/video_ouput
*
*/
void vout_UsePictureLocked( vout_thread_t *p_vout, picture_t *p_pic );
-
-/*
- * DO NOT use vout_UsePictureLocked unless you are in src/video_ouput.
- */
-int vout_Snapshot( vout_thread_t *, picture_t *p_pic );
-
#endif