Can't get dynamically added sinks to work.

Stirling Westrup swestrup at gmail.com
Fri May 2 13:02:11 PDT 2014


I have a complex program that wants to be able to create new output sinks
on the fly, while a video is playing. At any one time we can have anywhere
from zero to 15 outputs, each with its own postprocessing pipeline.

However, I've run into all sorts of troubles trying to get dynamically
added sinks to work. Finally, I decided to write a much, much simpler test
program that just alternatively adds and removes a single output, and I
can't get it to work. The video claims to be playing, but the output is
always frozen.

The basic idea of the test program is that I have this pipeline already
running:

  gst-launch videotestsrc ! tee name=t t. ! queue ! fakesink

And I mutate it dynamically into this pipeline.

  gst-launch videotestsrc ! tee name=t t. ! queue ! fakesink t. ! queue !
xvimagesink display=:0

The idea is that the test program will alternately add or  remove the
xvimagesink every few seconds, but this fails to work. Any
help/suggestions/criticism of my code would be most welcome. It can be
found here:

  http://pastebin.com/fSuHdHVJ


-- 
Stirling Westrup
Programmer, Entrepreneur.
https://www.linkedin.com/e/fpf/77228
http://www.linkedin.com/in/swestrup
http://technaut.livejournal.com
http://sourceforge.net/users/stirlingwestrup
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20140502/6c8f6f6e/attachment.html>


More information about the gstreamer-devel mailing list