Run multiple pipelines in parallel into same process question
jles
jlesquer at gmail.com
Mon Nov 4 10:52:32 UTC 2019
Hello,
First of all saying that I'm relatively new with gstreamer, apologise if
this question is too obvious and/or is already answered which in that case
I'd appreciate the link to the answer.
I've got a simple working pipeline using an appsrc element as source which
it's got the next form:
appsrc -> queue -> omxh264enc -> queue -> h264parse -> filesink
The data is pushed into appsrc running a "need-data" callback function and a
Gmain loop, the snippet code:
loop = g_main_loop_new (NULL, FALSE);
/*SETUP PIPELINE*/
g_signal_connect (appsrc, "need-data", G_CALLBACK (cb_need_data),pipeline);
/* play */
gst_element_set_state (pipeline, GST_STATE_PAUSE);
g_main_loop_run (loop);
The pushed frames into appsrc are coming from a live camera. Now I need to
run multiple pipelines as the described above to be able to record
simultaneously different cameras.
The first think I thought is to 'copy' the pipeline in a difference
instances using a structure and run several main loops (g_main_loop_run )
but the gmain loop is blocking so it only be recorded one camera as the rest
won't have the chance to start once the g_main_loop_run is called.
My questions are:
Would it be possible to run multiple pipelines (as described above) in
'parallel'?
What would it be the best way to do this?
Thanks in advance.
--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
More information about the gstreamer-devel
mailing list