I am trying to use GStreamer as a video backend for a softphone we are developing in house. Our softphone is not GLib based, has its own event loops. Is it possible to set up a gst pipeline and put into various states without having a GMainLoop?
The main event loop manages all the available sources of events for GLib and GTK applications. These events can come from any number of different types of sources such as file descriptors (plain files, pipes or sockets) and timeouts. New types of event sources can also be added using g_source_attach() .
A GStreamer bus takes care of forwarding messages from a pipeline.
In order to stop a pipeline use the following command: pipeline_stop name Puts the pipeline named name in the NULL state.
Yes, the video streams work independetly, so even a "main loop" like sleep(10)
will do the job. However, GLib is needed to capture any events or error messages from the gst pipeline.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With