GStreamer dynamic compositor

chrisplus3 chr.bauer1 at gmx.de
Fri Feb 2 13:25:03 UTC 2018


Hi there,

I've got a question regarding my implementation of the following
specification:
-----------------------------------------------------------------------------------------------------

 - Display N videostreams in different views on a screen.
 - "N" = Number of streams. Will be specified by the number of cameras
available.
 - "view" = Compositor constellation (Dual-Split, Triple-Split,
Picture-in-picture, ...)
 - It should be possible to switch to a different view during runtime.


My current solution is:
-----------------------------------------------------------------------------------------------------

 - Create sink and compositor elements and adding + linking them together in
a class "Streamer"
 - Creating N objects of class "Camera", which contains ElementPtr for
source, depay, parse and decode.
 - Adding and linking each element of each "Camera" object to the above
pipeline, which results in multiple compositor pads.
 - Keeping a pointer to the respective compositor Pad in each "Camera"
object. (???)
 
 --> Upon changing to a different view, I simply:

 - Edit the properties of these Pads (xpos, ypos, ...) while the pipeline is
still running. (???)
 - Show hide the "Camera" object if neccessary (alpha property)


So my question is:
-----------------------------------------------------------------------------------------------------

Am I approaching the problem the right way? (Especially the "(???)" notated
points seem quite suspect to me...
Can I improve the performance of switching between two views (Since it's
still quite buggy and slow).


Thank you in advance!

Christian




--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/


More information about the gstreamer-devel mailing list