[gst-devel] Problems on a gstreamer element with 2 src and 2 sink pads
Metathronius Galabant
m.galabant at googlemail.com
Fri Apr 24 09:00:18 CEST 2009
Dear all,
I've got a gstreamer element with 2 sink pads (of type GstCollectPads
with a callback) and 1 src pad (the output).
The callback processes both inputs, and then outputs the processed
data via gst_pad_push() to the src pad.
Due to performance reasons we need to extend this element to have an
additional src pad (another output); all this src pad needs to do is
to ADDITIONALLY push out the exact same data one of the sink pads
already gets (I can't use a tee-element).
Crude ASCII drawing:
-o[sink0]\
{ Processing of sink0,sink1 }-->---[src0]o-
-o[sink1]/--------->--------------------->---[src1]o-
1) Is this case possible with the gstreamer framework at all?
2) How are the events to be handled?
In case with 1 src pad and 2 sink pads it's easy - just copy the src
pad's event to BOTH sink pads over and it works.
How to proceed with 2 src pads? Must each event on a src pad copied to
all sink pads, AND to the other src pad?
3) The pipeline (gstreamer bin) goes into "async" mode and never runs
- is due to event being mishandled in the 2 sink <-> 2 src case?
Thanks and cheers,
M. Galabant
More information about the gstreamer-devel
mailing list