Commit 7e97a491 authored by Gildas Bazin's avatar Gildas Bazin

* modules/video_filter/*: implemented a forwarding vout_vaControl().

parent ba6992cc
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* adjust.c : Contrast/Hue/Saturation/Brightness video plugin for vlc * adjust.c : Contrast/Hue/Saturation/Brightness video plugin for vlc
***************************************************************************** *****************************************************************************
* Copyright (C) 2000, 2001, 2002, 2003 VideoLAN * Copyright (C) 2000, 2001, 2002, 2003 VideoLAN
* $Id: adjust.c,v 1.17 2004/01/25 20:05:28 hartman Exp $ * $Id$
* *
* Authors: Simon Latapie <garf@via.ecp.fr> * Authors: Simon Latapie <garf@via.ecp.fr>
* *
...@@ -99,6 +99,14 @@ inline static int32_t clip( int32_t a ) ...@@ -99,6 +99,14 @@ inline static int32_t clip( int32_t a )
return (a > 255) ? 255 : (a < 0) ? 0 : a; return (a > 255) ? 255 : (a < 0) ? 0 : a;
} }
/*****************************************************************************
* Control: control facility for the vout (forwards to child vout)
*****************************************************************************/
static int Control( vout_thread_t *p_vout, int i_query, va_list args )
{
return vout_vaControl( p_vout->p_sys->p_vout, i_query, args );
}
/***************************************************************************** /*****************************************************************************
* Create: allocates adjust video thread output method * Create: allocates adjust video thread output method
***************************************************************************** *****************************************************************************
...@@ -121,6 +129,7 @@ static int Create( vlc_object_t *p_this ) ...@@ -121,6 +129,7 @@ static int Create( vlc_object_t *p_this )
p_vout->pf_manage = NULL; p_vout->pf_manage = NULL;
p_vout->pf_render = Render; p_vout->pf_render = Render;
p_vout->pf_display = NULL; p_vout->pf_display = NULL;
p_vout->pf_control = Control;
var_Create( p_vout, "contrast", VLC_VAR_FLOAT | VLC_VAR_DOINHERIT ); var_Create( p_vout, "contrast", VLC_VAR_FLOAT | VLC_VAR_DOINHERIT );
var_Create( p_vout, "brightness", VLC_VAR_FLOAT | VLC_VAR_DOINHERIT ); var_Create( p_vout, "brightness", VLC_VAR_FLOAT | VLC_VAR_DOINHERIT );
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* clone.c : Clone video plugin for vlc * clone.c : Clone video plugin for vlc
***************************************************************************** *****************************************************************************
* Copyright (C) 2002, 2003 VideoLAN * Copyright (C) 2002, 2003 VideoLAN
* $Id: clone.c,v 1.12 2004/01/25 20:05:28 hartman Exp $ * $Id$
* *
* Authors: Samuel Hocevar <sam@zoy.org> * Authors: Samuel Hocevar <sam@zoy.org>
* *
...@@ -88,6 +88,19 @@ struct vout_sys_t ...@@ -88,6 +88,19 @@ struct vout_sys_t
vout_thread_t **pp_vout; vout_thread_t **pp_vout;
}; };
/*****************************************************************************
* Control: control facility for the vout (forwards to child vout)
*****************************************************************************/
static int Control( vout_thread_t *p_vout, int i_query, va_list args )
{
int i_vout;
for( i_vout = 0; i_vout < p_vout->p_sys->i_clones; i_vout++ )
{
vout_vaControl( p_vout->p_sys->pp_vout[ i_vout ], i_query, args );
}
return VLC_SUCCESS;
}
/***************************************************************************** /*****************************************************************************
* Create: allocates Clone video thread output method * Create: allocates Clone video thread output method
***************************************************************************** *****************************************************************************
...@@ -111,6 +124,7 @@ static int Create( vlc_object_t *p_this ) ...@@ -111,6 +124,7 @@ static int Create( vlc_object_t *p_this )
p_vout->pf_manage = NULL; p_vout->pf_manage = NULL;
p_vout->pf_render = Render; p_vout->pf_render = Render;
p_vout->pf_display = NULL; p_vout->pf_display = NULL;
p_vout->pf_control = Control;
psz_clonelist = config_GetPsz( p_vout, "clone-vout-list" ); psz_clonelist = config_GetPsz( p_vout, "clone-vout-list" );
if( psz_clonelist ) if( psz_clonelist )
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* crop.c : Crop video plugin for vlc * crop.c : Crop video plugin for vlc
***************************************************************************** *****************************************************************************
* Copyright (C) 2002, 2003 VideoLAN * Copyright (C) 2002, 2003 VideoLAN
* $Id: crop.c,v 1.15 2004/01/25 20:05:28 hartman Exp $ * $Id$
* *
* Authors: Samuel Hocevar <sam@zoy.org> * Authors: Samuel Hocevar <sam@zoy.org>
* *
...@@ -88,6 +88,14 @@ struct vout_sys_t ...@@ -88,6 +88,14 @@ struct vout_sys_t
vlc_bool_t b_changed; vlc_bool_t b_changed;
}; };
/*****************************************************************************
* Control: control facility for the vout (forwards to child vout)
*****************************************************************************/
static int Control( vout_thread_t *p_vout, int i_query, va_list args )
{
return vout_vaControl( p_vout->p_sys->p_vout, i_query, args );
}
/***************************************************************************** /*****************************************************************************
* Create: allocates Crop video thread output method * Create: allocates Crop video thread output method
***************************************************************************** *****************************************************************************
...@@ -110,6 +118,7 @@ static int Create( vlc_object_t *p_this ) ...@@ -110,6 +118,7 @@ static int Create( vlc_object_t *p_this )
p_vout->pf_manage = Manage; p_vout->pf_manage = Manage;
p_vout->pf_render = Render; p_vout->pf_render = Render;
p_vout->pf_display = NULL; p_vout->pf_display = NULL;
p_vout->pf_control = Control;
return VLC_SUCCESS; return VLC_SUCCESS;
} }
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* distort.c : Misc video effects plugin for vlc * distort.c : Misc video effects plugin for vlc
***************************************************************************** *****************************************************************************
* Copyright (C) 2000, 2001, 2002, 2003 VideoLAN * Copyright (C) 2000, 2001, 2002, 2003 VideoLAN
* $Id: distort.c,v 1.14 2004/01/25 20:05:28 hartman Exp $ * $Id$
* *
* Authors: Samuel Hocevar <sam@zoy.org> * Authors: Samuel Hocevar <sam@zoy.org>
* *
...@@ -90,6 +90,14 @@ struct vout_sys_t ...@@ -90,6 +90,14 @@ struct vout_sys_t
mtime_t last_date; mtime_t last_date;
}; };
/*****************************************************************************
* Control: control facility for the vout (forwards to child vout)
*****************************************************************************/
static int Control( vout_thread_t *p_vout, int i_query, va_list args )
{
return vout_vaControl( p_vout->p_sys->p_vout, i_query, args );
}
/***************************************************************************** /*****************************************************************************
* Create: allocates Distort video thread output method * Create: allocates Distort video thread output method
***************************************************************************** *****************************************************************************
...@@ -113,6 +121,7 @@ static int Create( vlc_object_t *p_this ) ...@@ -113,6 +121,7 @@ static int Create( vlc_object_t *p_this )
p_vout->pf_manage = NULL; p_vout->pf_manage = NULL;
p_vout->pf_render = Render; p_vout->pf_render = Render;
p_vout->pf_display = NULL; p_vout->pf_display = NULL;
p_vout->pf_control = Control;
p_vout->p_sys->i_mode = 0; p_vout->p_sys->i_mode = 0;
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* invert.c : Invert video plugin for vlc * invert.c : Invert video plugin for vlc
***************************************************************************** *****************************************************************************
* Copyright (C) 2000, 2001, 2002, 2003 VideoLAN * Copyright (C) 2000, 2001, 2002, 2003 VideoLAN
* $Id: invert.c,v 1.9 2004/01/25 03:28:41 hartman Exp $ * $Id$
* *
* Authors: Samuel Hocevar <sam@zoy.org> * Authors: Samuel Hocevar <sam@zoy.org>
* *
...@@ -66,6 +66,14 @@ struct vout_sys_t ...@@ -66,6 +66,14 @@ struct vout_sys_t
vout_thread_t *p_vout; vout_thread_t *p_vout;
}; };
/*****************************************************************************
* Control: control facility for the vout (forwards to child vout)
*****************************************************************************/
static int Control( vout_thread_t *p_vout, int i_query, va_list args )
{
return vout_vaControl( p_vout->p_sys->p_vout, i_query, args );
}
/***************************************************************************** /*****************************************************************************
* Create: allocates Invert video thread output method * Create: allocates Invert video thread output method
***************************************************************************** *****************************************************************************
...@@ -88,6 +96,7 @@ static int Create( vlc_object_t *p_this ) ...@@ -88,6 +96,7 @@ static int Create( vlc_object_t *p_this )
p_vout->pf_manage = NULL; p_vout->pf_manage = NULL;
p_vout->pf_render = Render; p_vout->pf_render = Render;
p_vout->pf_display = NULL; p_vout->pf_display = NULL;
p_vout->pf_control = Control;
return VLC_SUCCESS; return VLC_SUCCESS;
} }
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* logo.c : logo video plugin for vlc * logo.c : logo video plugin for vlc
***************************************************************************** *****************************************************************************
* Copyright (C) 2003-2004 VideoLAN * Copyright (C) 2003-2004 VideoLAN
* $Id: logo.c,v 1.10 2004/01/25 20:05:28 hartman Exp $ * $Id$
* *
* Authors: Simon Latapie <garf@videolan.org> * Authors: Simon Latapie <garf@videolan.org>
* *
...@@ -100,6 +100,14 @@ struct vout_sys_t ...@@ -100,6 +100,14 @@ struct vout_sys_t
int trans; int trans;
}; };
/*****************************************************************************
* Control: control facility for the vout (forwards to child vout)
*****************************************************************************/
static int Control( vout_thread_t *p_vout, int i_query, va_list args )
{
return vout_vaControl( p_vout->p_sys->p_vout, i_query, args );
}
/***************************************************************************** /*****************************************************************************
* Create: allocates logo video thread output method * Create: allocates logo video thread output method
***************************************************************************** *****************************************************************************
...@@ -122,6 +130,7 @@ static int Create( vlc_object_t *p_this ) ...@@ -122,6 +130,7 @@ static int Create( vlc_object_t *p_this )
p_vout->pf_manage = NULL; p_vout->pf_manage = NULL;
p_vout->pf_render = Render; p_vout->pf_render = Render;
p_vout->pf_display = NULL; p_vout->pf_display = NULL;
p_vout->pf_control = Control;
return VLC_SUCCESS; return VLC_SUCCESS;
} }
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* motion_blur.c : motion blur filter for vlc * motion_blur.c : motion blur filter for vlc
***************************************************************************** *****************************************************************************
* Copyright (C) 2000, 2001, 2002, 2003 VideoLAN * Copyright (C) 2000, 2001, 2002, 2003 VideoLAN
* $Id: motionblur.c,v 1.15 2004/01/25 20:05:28 hartman Exp $ * $Id$
* *
* Authors: Sigmund Augdal <sigmunau@idi.ntnu.no> * Authors: Sigmund Augdal <sigmunau@idi.ntnu.no>
* *
...@@ -82,6 +82,14 @@ struct vout_sys_t ...@@ -82,6 +82,14 @@ struct vout_sys_t
picture_t *p_lastpic; picture_t *p_lastpic;
}; };
/*****************************************************************************
* Control: control facility for the vout (forwards to child vout)
*****************************************************************************/
static int Control( vout_thread_t *p_vout, int i_query, va_list args )
{
return vout_vaControl( p_vout->p_sys->p_vout, i_query, args );
}
/***************************************************************************** /*****************************************************************************
* Create: allocates Deinterlace video thread output method * Create: allocates Deinterlace video thread output method
***************************************************************************** *****************************************************************************
...@@ -104,6 +112,7 @@ static int Create( vlc_object_t *p_this ) ...@@ -104,6 +112,7 @@ static int Create( vlc_object_t *p_this )
p_vout->pf_manage = NULL; p_vout->pf_manage = NULL;
p_vout->pf_render = Render; p_vout->pf_render = Render;
p_vout->pf_display = NULL; p_vout->pf_display = NULL;
p_vout->pf_control = Control;
p_vout->p_sys->i_factor = config_GetInt( p_vout, "blur-factor" ); p_vout->p_sys->i_factor = config_GetInt( p_vout, "blur-factor" );
p_vout->p_sys->b_double_rate = 0; p_vout->p_sys->b_double_rate = 0;
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* transform.c : transform image module for vlc * transform.c : transform image module for vlc
***************************************************************************** *****************************************************************************
* Copyright (C) 2000-2004 VideoLAN * Copyright (C) 2000-2004 VideoLAN
* $Id: transform.c,v 1.18 2004/01/25 20:05:28 hartman Exp $ * $Id$
* *
* Authors: Samuel Hocevar <sam@zoy.org> * Authors: Samuel Hocevar <sam@zoy.org>
* *
...@@ -87,6 +87,14 @@ struct vout_sys_t ...@@ -87,6 +87,14 @@ struct vout_sys_t
vout_thread_t *p_vout; vout_thread_t *p_vout;
}; };
/*****************************************************************************
* Control: control facility for the vout (forwards to child vout)
*****************************************************************************/
static int Control( vout_thread_t *p_vout, int i_query, va_list args )
{
return vout_vaControl( p_vout->p_sys->p_vout, i_query, args );
}
/***************************************************************************** /*****************************************************************************
* Create: allocates Transform video thread output method * Create: allocates Transform video thread output method
***************************************************************************** *****************************************************************************
...@@ -110,6 +118,7 @@ static int Create( vlc_object_t *p_this ) ...@@ -110,6 +118,7 @@ static int Create( vlc_object_t *p_this )
p_vout->pf_manage = NULL; p_vout->pf_manage = NULL;
p_vout->pf_render = Render; p_vout->pf_render = Render;
p_vout->pf_display = NULL; p_vout->pf_display = NULL;
p_vout->pf_control = Control;
/* Look what method was requested */ /* Look what method was requested */
psz_method = config_GetPsz( p_vout, "transform-type" ); psz_method = config_GetPsz( p_vout, "transform-type" );
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* wall.c : Wall video plugin for vlc * wall.c : Wall video plugin for vlc
***************************************************************************** *****************************************************************************
* Copyright (C) 2000, 2001, 2002, 2003 VideoLAN * Copyright (C) 2000, 2001, 2002, 2003 VideoLAN
* $Id: wall.c,v 1.13 2004/01/25 20:05:28 hartman Exp $ * $Id$
* *
* Authors: Samuel Hocevar <sam@zoy.org> * Authors: Samuel Hocevar <sam@zoy.org>
* *
...@@ -94,6 +94,25 @@ struct vout_sys_t ...@@ -94,6 +94,25 @@ struct vout_sys_t
} *pp_vout; } *pp_vout;
}; };
/*****************************************************************************
* Control: control facility for the vout (forwards to child vout)
*****************************************************************************/
static int Control( vout_thread_t *p_vout, int i_query, va_list args )
{
int i_row, i_col, i_vout = 0;
for( i_row = 0; i_row < p_vout->p_sys->i_row; i_row++ )
{
for( i_col = 0; i_col < p_vout->p_sys->i_col; i_col++ )
{
vout_vaControl( p_vout->p_sys->pp_vout[ i_vout ].p_vout,
i_query, args );
i_vout++;
}
}
return VLC_SUCCESS;
}
/***************************************************************************** /*****************************************************************************
* Create: allocates Wall video thread output method * Create: allocates Wall video thread output method
***************************************************************************** *****************************************************************************
...@@ -118,6 +137,7 @@ static int Create( vlc_object_t *p_this ) ...@@ -118,6 +137,7 @@ static int Create( vlc_object_t *p_this )
p_vout->pf_manage = NULL; p_vout->pf_manage = NULL;
p_vout->pf_render = Render; p_vout->pf_render = Render;
p_vout->pf_display = NULL; p_vout->pf_display = NULL;
p_vout->pf_control = Control;
/* Look what method was requested */ /* Look what method was requested */
p_vout->p_sys->i_col = config_GetInt( p_vout, "wall-cols" ); p_vout->p_sys->i_col = config_GetInt( p_vout, "wall-cols" );
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment