gstbasetransform_class->transform_caps =
GST_DEBUG_FUNCPTR (gst_alpha_color_transform_caps);
+ gstbasetransform_class->transform_ip_on_passthrough = FALSE;
gstvideofilter_class->set_info = GST_DEBUG_FUNCPTR (gst_alpha_color_set_info);
gstvideofilter_class->transform_frame_ip =
{
GstAlphaColor *alpha = GST_ALPHA_COLOR (filter);
- if (gst_base_transform_is_passthrough (GST_BASE_TRANSFORM (filter)))
- return GST_FLOW_OK;
-
if (G_UNLIKELY (!alpha->process))
goto not_negotiated;
caps);
gst_caps_unref (caps);
- GST_AUDIO_FILTER_CLASS (klass)->setup =
- GST_DEBUG_FUNCPTR (gst_audio_amplify_setup);
GST_BASE_TRANSFORM_CLASS (klass)->transform_ip =
GST_DEBUG_FUNCPTR (gst_audio_amplify_transform_ip);
+ GST_BASE_TRANSFORM_CLASS (klass)->transform_ip_on_passthrough = FALSE;
+
+ GST_AUDIO_FILTER_CLASS (klass)->setup =
+ GST_DEBUG_FUNCPTR (gst_audio_amplify_setup);
}
static void
if (GST_CLOCK_TIME_IS_VALID (stream_time))
gst_object_sync_values (GST_OBJECT (filter), stream_time);
- if (gst_base_transform_is_passthrough (base) ||
- G_UNLIKELY (GST_BUFFER_FLAG_IS_SET (buf, GST_BUFFER_FLAG_GAP)))
+ if (G_UNLIKELY (GST_BUFFER_FLAG_IS_SET (buf, GST_BUFFER_FLAG_GAP)))
return GST_FLOW_OK;
gst_buffer_map (buf, &map, GST_MAP_READWRITE);
GST_AUDIO_FILTER_CLASS (klass)->setup =
GST_DEBUG_FUNCPTR (gst_audio_dynamic_setup);
+
GST_BASE_TRANSFORM_CLASS (klass)->transform_ip =
GST_DEBUG_FUNCPTR (gst_audio_dynamic_transform_ip);
+ GST_BASE_TRANSFORM_CLASS (klass)->transform_ip_on_passthrough = FALSE;
}
static void
if (GST_CLOCK_TIME_IS_VALID (stream_time))
gst_object_sync_values (GST_OBJECT (filter), stream_time);
- if (gst_base_transform_is_passthrough (base) ||
- G_UNLIKELY (GST_BUFFER_FLAG_IS_SET (buf, GST_BUFFER_FLAG_GAP)))
+ if (G_UNLIKELY (GST_BUFFER_FLAG_IS_SET (buf, GST_BUFFER_FLAG_GAP)))
return GST_FLOW_OK;
gst_buffer_map (buf, &map, GST_MAP_READWRITE);
trans_class->transform_ip =
GST_DEBUG_FUNCPTR (gst_audio_fx_base_iir_filter_transform_ip);
+ trans_class->transform_ip_on_passthrough = FALSE;
trans_class->stop = GST_DEBUG_FUNCPTR (gst_audio_fx_base_iir_filter_stop);
}
if (GST_CLOCK_TIME_IS_VALID (stream_time))
gst_object_sync_values (GST_OBJECT (filter), stream_time);
- if (gst_base_transform_is_passthrough (base))
- return GST_FLOW_OK;
-
g_return_val_if_fail (filter->a != NULL, GST_FLOW_ERROR);
gst_buffer_map (buf, &map, GST_MAP_READWRITE);
caps);
gst_caps_unref (caps);
- GST_AUDIO_FILTER_CLASS (klass)->setup =
- GST_DEBUG_FUNCPTR (gst_audio_invert_setup);
GST_BASE_TRANSFORM_CLASS (klass)->transform_ip =
GST_DEBUG_FUNCPTR (gst_audio_invert_transform_ip);
+ GST_BASE_TRANSFORM_CLASS (klass)->transform_ip_on_passthrough = FALSE;
+
+ GST_AUDIO_FILTER_CLASS (klass)->setup =
+ GST_DEBUG_FUNCPTR (gst_audio_invert_setup);
}
static void
if (GST_CLOCK_TIME_IS_VALID (stream_time))
gst_object_sync_values (GST_OBJECT (filter), stream_time);
- if (gst_base_transform_is_passthrough (base) ||
- G_UNLIKELY (GST_BUFFER_FLAG_IS_SET (buf, GST_BUFFER_FLAG_GAP)))
+ if (G_UNLIKELY (GST_BUFFER_FLAG_IS_SET (buf, GST_BUFFER_FLAG_GAP)))
return GST_FLOW_OK;
gst_buffer_map (buf, &map, GST_MAP_READWRITE);
caps);
gst_caps_unref (caps);
- GST_AUDIO_FILTER_CLASS (klass)->setup =
- GST_DEBUG_FUNCPTR (gst_audio_karaoke_setup);
GST_BASE_TRANSFORM_CLASS (klass)->transform_ip =
GST_DEBUG_FUNCPTR (gst_audio_karaoke_transform_ip);
+ GST_BASE_TRANSFORM_CLASS (klass)->transform_ip_on_passthrough = FALSE;
+
+ GST_AUDIO_FILTER_CLASS (klass)->setup =
+ GST_DEBUG_FUNCPTR (gst_audio_karaoke_setup);
}
static void
if (GST_CLOCK_TIME_IS_VALID (stream_time))
gst_object_sync_values (GST_OBJECT (filter), stream_time);
- if (gst_base_transform_is_passthrough (base) ||
- G_UNLIKELY (GST_BUFFER_FLAG_IS_SET (buf, GST_BUFFER_FLAG_GAP)))
+ if (G_UNLIKELY (GST_BUFFER_FLAG_IS_SET (buf, GST_BUFFER_FLAG_GAP)))
return GST_FLOW_OK;
gst_buffer_map (buf, &map, GST_MAP_READWRITE);
trans_class->before_transform =
GST_DEBUG_FUNCPTR (gst_gamma_before_transform);
+ trans_class->transform_ip_on_passthrough = FALSE;
vfilter_class->set_info = GST_DEBUG_FUNCPTR (gst_gamma_set_info);
vfilter_class->transform_frame_ip =
if (!gamma->process)
goto not_negotiated;
- if (gst_base_transform_is_passthrough (GST_BASE_TRANSFORM (vfilter)))
- goto done;
-
GST_OBJECT_LOCK (gamma);
gamma->process (gamma, frame);
GST_OBJECT_UNLOCK (gamma);
-done:
return GST_FLOW_OK;
/* ERRORS */
if (!videobalance->process)
goto not_negotiated;
- /* if no change is needed, we are done */
- if (gst_base_transform_is_passthrough (GST_BASE_TRANSFORM (vfilter)))
- goto done;
-
GST_OBJECT_LOCK (videobalance);
videobalance->process (videobalance, frame);
GST_OBJECT_UNLOCK (videobalance);
-done:
return GST_FLOW_OK;
/* ERRORS */
trans_class->before_transform =
GST_DEBUG_FUNCPTR (gst_video_balance_before_transform);
+ trans_class->transform_ip_on_passthrough = FALSE;
vfilter_class->set_info = GST_DEBUG_FUNCPTR (gst_video_balance_set_info);
vfilter_class->transform_frame_ip =