]> git.sesse.net Git - vlc/blobdiff - src/video_output/vout_internal.h
Gives the input_thread_t to use to vout_Request().
[vlc] / src / video_output / vout_internal.h
index 5d19e8853898bdcc6b26a2cfe2dc0a420ba0abd7..0caa9156664ffb604fd6e7f6e76cd5fb72b3de61 100644 (file)
@@ -33,6 +33,7 @@
 #include <vlc_picture_fifo.h>
 #include <vlc_picture_pool.h>
 #include <vlc_vout_display.h>
+#include <vlc_vout_wrapper.h>
 #include "vout_control.h"
 #include "control.h"
 #include "snapshot.h"
@@ -45,8 +46,11 @@ struct vout_thread_sys_t
     /* Splitter module if used */
     char            *splitter_name;
 
+    /* Input thread for dvd menu interactions */
+    vlc_object_t    *input;
+
     /* */
-    video_format_t  original; /* Original format ie coming from the decoder */
+    video_format_t  original;   /* Original format ie coming from the decoder */
 
     /* Snapshot interface */
     vout_snapshot_t snapshot;
@@ -61,6 +65,13 @@ struct vout_thread_sys_t
     unsigned int    i_par_num;
     unsigned int    i_par_den;
 
+    /* Video output window */
+    struct {
+        bool              is_unused;
+        vout_window_cfg_t cfg;
+        vout_window_t     *object;
+    } window;
+
     /* Thread & synchronization */
     vlc_thread_t    thread;
     bool            dead;
@@ -129,13 +140,14 @@ void vout_ControlChangeCropRatio(vout_thread_t *, unsigned num, unsigned den);
 void vout_ControlChangeCropWindow(vout_thread_t *, int x, int y, int width, int height);
 void vout_ControlChangeCropBorder(vout_thread_t *, int left, int top, int right, int bottom);
 void vout_ControlChangeFilters(vout_thread_t *, const char *);
+void vout_ControlChangeSubFilters(vout_thread_t *, const char *);
 
 /* */
 void vout_IntfInit( vout_thread_t * );
 
 /* */
-int  vout_OpenWrapper (vout_thread_t *, const char *);
-void vout_CloseWrapper(vout_thread_t *);
+int  vout_OpenWrapper (vout_thread_t *, const char *, const vout_display_state_t *);
+void vout_CloseWrapper(vout_thread_t *, vout_display_state_t *);
 int  vout_InitWrapper(vout_thread_t *);
 void vout_EndWrapper(vout_thread_t *);
 void vout_ManageWrapper(vout_thread_t *);
@@ -144,6 +156,7 @@ void vout_DisplayWrapper(vout_thread_t *, picture_t *);
 
 /* */
 int spu_ProcessMouse(spu_t *, const vlc_mouse_t *, const video_format_t *);
+void spu_Attach( spu_t *, vlc_object_t *input, bool );
 
 #endif