GstBuffer life through pipeline

Matteo Pampolini matteo.pampolini at selexelsag.com
Wed Feb 8 08:04:28 PST 2012


Hello there,

my name is Matteo and together with my group I'm developing a quite 
complex video-surveillance application based on GStreamer (Windows). For 
simplicity you can imagine a window with a grid layout with many 
concurrent videos showing in their respective area and fetching data 
through RTSP/RTP.

We noticed that if we make any change that in some way slows down or 
stops the visualization the memory heap starts increasing very fast 
until the process inevitably crashes.

Then I tried to insulate the issue by simply using gst-launch with an 
RTSP/RTP source and putting a very silly

while(1)
  Sleep(500);

inside the show_frame function of videosink plugin (in our case 
d3dvideosink), and the problem is easily reproduced.

Can you please try to give me an idea of the lifetime of GstBuffer 
through the pipeline? I mean, the heap issue is surely caused by a 
continuous allocation of GstBuffer's by the RTP source without a 
corresponding free when they are consumed, but who is in charge of this? 
Why isn't there a mechanism that checks the consumer status and 
eventually stops the producer?

Many thanks in advance for your kind support,

Matteo
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20120208/6aa5e1ea/attachment-0001.htm>


More information about the gstreamer-devel mailing list