[Bug 744211] interleave: assertion 'self->func != NULL' failed

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Fri Mar 13 08:16:09 PDT 2015


https://bugzilla.gnome.org/show_bug.cgi?id=744211

Vincent Penquerc'h <vincent.penquerch at collabora.co.uk> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |vincent.penquerch at collabora
                   |                            |.co.uk

--- Comment #1 from Vincent Penquerc'h <vincent.penquerch at collabora.co.uk> ---
It seems to be like a bug introduced in the move to 0.11:

Commit 4945af5eff456defc0073a38982e0e92a0a4305b ("interleave: port to 0.11")
has this hunk:

@@ -479,8 +461,11 @@ gst_interleave_request_new_pad (GstElement * element,
GstPadTemplate * templ,
   if (templ->direction != GST_PAD_SINK)
     goto not_sink_pad;

-  channels = g_atomic_int_add (&self->channels, 1);
   padnumber = g_atomic_int_add (&self->padcounter, 1);
+  if (self->channel_positions_from_input)
+    channels = g_atomic_int_add (&self->channels, 1);
+  else
+    channels = padnumber;

   pad_name = g_strdup_printf ("sink_%u", padnumber);
   new_pad = GST_PAD_CAST (g_object_new (GST_TYPE_INTERLEAVE_PAD,


Before the port, self->channels will always be incremented, regardless of
self->channel_positions_from_input. Since the commit purports to port, I doubt
the change of semantics was intended.

No clue what this bit of code is supposed to be doing though.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list