diff --git a/libs/gst/base/gstbasesrc.c b/libs/gst/base/gstbasesrc.c index 310fb6f0c0..f2ea2acbb9 100644 --- a/libs/gst/base/gstbasesrc.c +++ b/libs/gst/base/gstbasesrc.c @@ -2810,12 +2810,16 @@ static gboolean gst_base_src_negotiate (GstBaseSrc * basesrc) { GstBaseSrcClass *bclass; - gboolean result = TRUE; + gboolean result; bclass = GST_BASE_SRC_GET_CLASS (basesrc); + GST_DEBUG_OBJECT (basesrc, "starting negotiation"); + if (G_LIKELY (bclass->negotiate)) result = bclass->negotiate (basesrc); + else + result = TRUE; if (G_LIKELY (result)) { GstCaps *caps;