Multiple gnloperation elements?

Lorenzo Miniero lminiero at
Mon Jul 15 03:57:03 PDT 2013

> > Let's say you have two video streams that's you like to crop before
> > mixing, you could have the following gnlcomposition:
> >
> > 1. [OP         videomixer          ]
> > 2. [OP     crop-1 num-sinks=1      ]
> > 3. [SRC         video-1            ]
> > 4. [OP     crop-2 num-sinks=1      ]
> > 5. [SRC         video-2            ]
> > Nicolas

Hello Nicholas,

thanks for your feedback! It's nice to know something like this is indeed
possible. I tried to modify the application according to you suggestion,
but I've encountered a few issues, though.

In fact, as suggested in those old discussions I linked in the original
post, I'm currently intercepting a 'signal::input-priority-changed' in the
videomixer gnloperation to place the videos to mix accordingly (priority X
--> position Y). As it is now, it looks like the signal handler is managing
both gnlfilesources and the new videocrop gnloperations (which have the
same [media-]start/duration values as the gnlfilesources they are
associated with). I tried playing a bit with priorities, but I couldn't get
far, as sometimes this would result in cascaded videocrop elements.

What I tried then was to only have the 'input-priority-changed' signal have
effect on the videocrop gnloperations (as they're the ones to be attached
to the videomixer) and to additionally intercept a 'pad-added' signal for
each gnlfilesource, in order to have them attach to the related videocrop
gnloperation instead when a pad becomes available, but it didn't work
either: the debug DOT file seems to look fine, but the video simply does
not work, and while audio keeps on working (there's a parallel
gnlcomposition for that) a following video element never appears at all in
the debug log (probably meaning that some of non-linear video components
are stuck).

Am I missing something obvious? Is the order in which you add non-linear
elements to a composition important, for instance (I noticed you numbered
them the other way around), or do I need to focus on a different aspect

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the gstreamer-devel mailing list