Interpipe - Switching between two pipelines.

Michael Gruner michael.gruner at ridgerun.com
Thu Nov 24 13:42:16 UTC 2022


Hi Aravindhan

Interpipes are essentially appsink/appsrc underneath.

I’ve seen this accumulation you’re referring to, and it’s almost always due to the interpipesrc (appsrc) queuing buffers. Make sure you limit the internal capacity via max-bytes, max-time or max-buffers and configure it to block or drop buffers when the internal queue is full, via block or leaky-type.

As per alternatives, there’s always the input-selector, intervideosrc/interaudiosrc or even handling the dynamic branches yourself programmatically. 

Michael

> On 24 Nov 2022, at 00:31, Aravindhan K via gstreamer-devel <gstreamer-devel at lists.freedesktop.org> wrote:
> 
> 
> Hi All, 
> 
> For a video streaming application we are building we wanted to switch over different sources of video inputs ( One is RTSP source and other HLS source) and publish those over WebRTC connection. At first we we investigated using https://gstreamer.freedesktop.org/documentation/application-development/advanced/pipeline-manipulation.html, it worked well for switching single element, but swapping most of pipeline didn't go well for us.
> 
> then came across this package, https://github.com/RidgeRun/gst-interpipe and tried a simple example using C code, 
> https://pastebin.com/XUjNSi4i
> when I try to switch the source pipeline, memory usage goes peeks and gets terminated by OS. If any used this package before, kindly share some pointers what I might be doing wrong. 
> 
> 
> Or any other alternate ways to handle this would be helpful
> 
> 
> Thanks,
> Aravindhan K
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20221124/2e31d2c7/attachment.htm>


More information about the gstreamer-devel mailing list