gst-interpipe icon indicating copy to clipboard operation
gst-interpipe copied to clipboard

how configure interpipe plugin between two dockers ?

Open dradenvandewind opened this issue 2 years ago • 3 comments
trafficstars

Actually, i have a master pipeline write in using python binding ( master container ) and in a slave pipeline (slave container) write in using c++.

the interconnection of the pipes is carried out by sharemems (shrsink and shrsrc ). How to replace them by the interpipe plugins ? How configure your ipcpipelinesrc and ipcpipelinesink plugin ? docker-compose ?

dradenvandewind avatar Feb 17 '23 14:02 dradenvandewind

the interpipes have to run in the same process, otherwise they can not talk to each other.

a way around this is to use gstd and have the master start a pipeline in gstd and the slave to start another 'slave' pipeline in the same gstd. then the interpipesrc and interpipesink can find each other.

because the interface to gstd is a socket, both dockers can find it and you can decide to run gstd in either of your dockers or on the host system (only start up 1 gstd though)

clogwog avatar Mar 21 '23 03:03 clogwog

a way around this is to use gstd

Is there a way to send a pipeline constructed in a C/C++ application with GObject syntax to gstd?

I have a number of GStreamer pipelines in my existing system that uses that I would like to connect via interpipe rather than shmsink and shmsrc. Is there a way I can tie them all to gstd without significantly overhauling our architecture?

pwolfe1 avatar Mar 22 '23 17:03 pwolfe1

not that i know of. libgstd-1.0.so will allow you to send pipeline 'strings' to gstd not whole structures.

gstd takes 'ownership' of the creation , maintenance and destruction of the GStreamer plugins for you. So it is a different architecture. It also has some limitation on the events that you have access to.

we got around that by creating new plugins that handle the events that we really need to have outside of gstd inside the plugin and bringing them in/out via a different method (mqtt in our case)

clogwog avatar Mar 22 '23 20:03 clogwog