]> git.sesse.net Git - vlc/blobdiff - src/video_output/vout_internal.h
Add nsobject support to vout_window_t
[vlc] / src / video_output / vout_internal.h
index 951a9d1643cedb0a8ffdb1deea4395269ab9bb79..c256736d166a58c015d0295b0b57dc48fd4dcd98 100644 (file)
  */
 #define VOUT_MAX_PICTURES (20)
 
+/**
+ * Number of frames used to estimate the maximum filter chain latency.
+ * For performance, it is best to use a power of 2
+ */
+#define VOUT_FILTER_DELAYS (8)
+
 /* */
 struct vout_thread_sys_t
 {
@@ -126,6 +132,8 @@ struct vout_thread_sys_t
     /* Video filter2 chain */
     vlc_mutex_t     vfilter_lock;
     filter_chain_t *vfilter_chain;
+    unsigned        vfilter_delay_index;
+    mtime_t         vfilter_delay[VOUT_FILTER_DELAYS];
 
     /* */
     vlc_mouse_t     mouse;
@@ -151,6 +159,7 @@ void vout_ControlChangeCropWindow(vout_thread_t *, int x, int y, int width, int
 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_ControlChangeSubMargin(vout_thread_t *, int);
 
 /* */
 void vout_IntfInit( vout_thread_t * );
@@ -167,6 +176,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 );
+void spu_ChangeMargin(spu_t *, int);
 
 #endif