fix to adder: don't pull on unusable pads
authorAndy Wingo <wingo@pobox.com>
Fri, 26 Jul 2002 18:55:43 +0000 (18:55 +0000)
committerAndy Wingo <wingo@pobox.com>
Fri, 26 Jul 2002 18:55:43 +0000 (18:55 +0000)
Original commit message from CVS:
* fix to adder: don't pull on unusable pads
* fix to ladspa: get output buffers first, so we can know how many frames to
process
- this breaks inplace buffer stuff, hmm
* fix to float2int: add a bufferpool with the same nframes as the source pad's
pool -> no extra latency

gst/adder/gstadder.c

index 653903d..fa75df3 100644 (file)
@@ -418,6 +418,12 @@ gst_adder_loop (GstElement *element)
 
       GST_DEBUG (0, "looking into channel %p", input);
       
+      if (GST_PAD_IS_USABLE (input->sinkpad)) {
+        GST_DEBUG (0, "adder ignoring pad %s:%s", GST_DEBUG_PAD_NAME (input->sinkpad));
+        inputs = inputs->next;
+        continue;
+      }
+
       /* get data from the bytestream of each input channel. we need to check for
          events before passing on the data to the output buffer. */
       got_bytes = gst_bytestream_peek_bytes (input->bytestream, &raw_in, GST_BUFFER_SIZE (buf_out));