Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/GStreamer/gstreamer.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Waters <matthew@centricular.com>2020-03-11 14:39:35 +0300
committerTim-Philipp Müller <tim@centricular.com>2020-03-13 17:37:58 +0300
commitd1c887bc774179d51fa227282a6979a0dd37bda9 (patch)
treefc7e8a14b6d6ff49a04660b86f331823c12cf4d5
parentc2a7875aa12f75439ee392ffe4be62d5dd9476d4 (diff)
basetransform: allow not passthrough if generate_output is implemented
This allows an element to not require implementing transform or transform_ip.
-rw-r--r--libs/gst/base/gstbasetransform.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/libs/gst/base/gstbasetransform.c b/libs/gst/base/gstbasetransform.c
index 5ddad78342..40154cac5c 100644
--- a/libs/gst/base/gstbasetransform.c
+++ b/libs/gst/base/gstbasetransform.c
@@ -2515,7 +2515,7 @@ gst_base_transform_src_activate_mode (GstPad * pad, GstObject * parent,
* useful for filters that do not care about negotiation.
*
* Always %TRUE for filters which don't implement either a transform
- * or transform_ip method.
+ * or transform_ip or generate_output method.
*
* MT safe.
*/
@@ -2531,7 +2531,8 @@ gst_base_transform_set_passthrough (GstBaseTransform * trans,
GST_OBJECT_LOCK (trans);
if (!passthrough) {
- if (bclass->transform_ip || bclass->transform)
+ if (bclass->transform_ip || bclass->transform || (bclass->generate_output
+ && bclass->generate_output != default_generate_output))
trans->priv->passthrough = FALSE;
} else {
trans->priv->passthrough = TRUE;