diff --git a/gstlal-burst/gst/lal/gstlal_string_triggergen.c b/gstlal-burst/gst/lal/gstlal_string_triggergen.c index 5640403a25cec39fe39dc528d3bfce6a6d023783..226949518b3443e55aa1abd2dddf6f1a4134834a 100644 --- a/gstlal-burst/gst/lal/gstlal_string_triggergen.c +++ b/gstlal-burst/gst/lal/gstlal_string_triggergen.c @@ -367,8 +367,14 @@ static gboolean set_caps(GstBaseTransform *trans, GstCaps *incaps, GstCaps *outc GSTLALStringTriggergen *element = GSTLAL_STRING_TRIGGERGEN(trans); gboolean success = gst_audio_info_from_caps(&element->audio_info, incaps); - if(success) + if(success) { + if(GST_AUDIO_INFO_CHANNELS(&element->audio_info) != element->num_templates) { + GST_ELEMENT_ERROR(trans, CORE, NEGOTIATION, (NULL), ("number of channels %d is not equal to number of templates %d", GST_AUDIO_INFO_CHANNELS(&element->audio_info), element->num_templates)); + success = FALSE; + } g_object_set(element->adapter, "unit-size", GST_AUDIO_INFO_BPF(&element->audio_info), NULL); + } + /* * done @@ -391,9 +397,6 @@ static gboolean start(GstBaseTransform *trans) if(!element->bank) { GST_ELEMENT_ERROR(trans, CORE, NEGOTIATION, (NULL), ("no template bank")); success = FALSE; - } else if(GST_AUDIO_INFO_CHANNELS(&element->audio_info) != element->num_templates) { - GST_ELEMENT_ERROR(trans, CORE, NEGOTIATION, (NULL), ("number of channels is not equal to number of templates")); - success = FALSE; } else { for(i=0; i < element->num_templates; i++) { /*