effectv: Don't allow caps changes for some effectv filters

These filters use information from previous frames to
generate the current frame and a caps change will make
the effect start from the beginning again.
This commit is contained in:
Sebastian Dröge 2009-07-24 19:38:07 +02:00
parent 6eada080a0
commit f0054bcc82
9 changed files with 26 additions and 0 deletions

View file

@ -418,4 +418,7 @@ gst_agingtv_init (GstAgingTV * agingtv, GstAgingTVClass * klass)
agingtv->color_aging = DEFAULT_COLOR_AGING;
agingtv->pits = DEFAULT_PITS;
agingtv->dusts = DEFAULT_DUSTS;
gst_pad_use_fixed_caps (GST_BASE_TRANSFORM_SINK_PAD (agingtv));
gst_pad_use_fixed_caps (GST_BASE_TRANSFORM_SRC_PAD (agingtv));
}

View file

@ -310,4 +310,7 @@ gst_dicetv_init (GstDiceTV * filter, GstDiceTVClass * klass)
filter->g_cube_size = 0;
filter->g_map_height = 0;
filter->g_map_width = 0;
gst_pad_use_fixed_caps (GST_BASE_TRANSFORM_SINK_PAD (filter));
gst_pad_use_fixed_caps (GST_BASE_TRANSFORM_SRC_PAD (filter));
}

View file

@ -286,4 +286,7 @@ gst_quarktv_init (GstQuarkTV * filter, GstQuarkTVClass * klass)
{
filter->planes = PLANES;
filter->current_plane = filter->planes - 1;
gst_pad_use_fixed_caps (GST_BASE_TRANSFORM_SRC_PAD (filter));
gst_pad_use_fixed_caps (GST_BASE_TRANSFORM_SINK_PAD (filter));
}

View file

@ -612,4 +612,7 @@ gst_radioactv_init (GstRadioacTV * filter, GstRadioacTVClass * klass)
filter->color = DEFAULT_COLOR;
filter->interval = DEFAULT_INTERVAL;
filter->trigger = DEFAULT_TRIGGER;
gst_pad_use_fixed_caps (GST_BASE_TRANSFORM_SRC_PAD (filter));
gst_pad_use_fixed_caps (GST_BASE_TRANSFORM_SINK_PAD (filter));
}

View file

@ -607,4 +607,7 @@ static void
gst_rippletv_init (GstRippleTV * filter, GstRippleTVClass * klass)
{
filter->mode = DEFAULT_MODE;
gst_pad_use_fixed_caps (GST_BASE_TRANSFORM_SRC_PAD (filter));
gst_pad_use_fixed_caps (GST_BASE_TRANSFORM_SINK_PAD (filter));
}

View file

@ -265,4 +265,7 @@ gst_shagadelictv_init (GstShagadelicTV * filter, GstShagadelicTVClass * klass)
{
filter->ripple = NULL;
filter->spiral = NULL;
gst_pad_use_fixed_caps (GST_BASE_TRANSFORM_SRC_PAD (filter));
gst_pad_use_fixed_caps (GST_BASE_TRANSFORM_SINK_PAD (filter));
}

View file

@ -272,4 +272,7 @@ static void
gst_streaktv_init (GstStreakTV * filter, GstStreakTVClass * klass)
{
filter->feedback = DEFAULT_FEEDBACK;
gst_pad_use_fixed_caps (GST_BASE_TRANSFORM_SRC_PAD (filter));
gst_pad_use_fixed_caps (GST_BASE_TRANSFORM_SINK_PAD (filter));
}

View file

@ -308,4 +308,7 @@ gst_vertigotv_init (GstVertigoTV * filter, GstVertigoTVClass * klass)
filter->phase = 0.0;
filter->phase_increment = 0.02;
filter->zoomrate = 1.01;
gst_pad_use_fixed_caps (GST_BASE_TRANSFORM_SRC_PAD (filter));
gst_pad_use_fixed_caps (GST_BASE_TRANSFORM_SINK_PAD (filter));
}

View file

@ -282,4 +282,6 @@ gst_warptv_class_init (GstWarpTVClass * klass)
static void
gst_warptv_init (GstWarpTV * warptv, GstWarpTVClass * klass)
{
gst_pad_use_fixed_caps (GST_BASE_TRANSFORM_SRC_PAD (warptv));
gst_pad_use_fixed_caps (GST_BASE_TRANSFORM_SINK_PAD (warptv));
}