I have a really weird problem.
I connect a pipeline up as follows: demux -> queue-> audio_sink -> queue ->video_sink And it runs for a while but then stops, when I look at my memory usage it seems to be huge and very close to 0 free. If I then use mtrace (it works wuite well on an embedded system) I get loads, I mean loads of 'memory not freed addresses' If I replace my sink with a fake sink I still seem to get a similar behaviour I was wondering how do I trace/debug memory allocation (buffer allocation) in GStreamer. I have tried export GST_DEBUG=GstBuffer:* and it did not help any advice/clues on how I can debug why my memory is being eaten, as I have removed my sink from the equation I can only presume mtrace is not as useful and therefore I need to be able to use Gstreamer debugging to help identify any memory leaks in my sink code Hope someone can help Daniel Laird ------------------------------------------------------------------------------ Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are powering Web 2.0 with engaging, cross-platform capabilities. Quickly and easily build your RIAs with Flex Builder, the Eclipse(TM)based development software that enables intelligent coding and step-through debugging. Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
All,
I am having real difficulty debugging memory allocation in my application. Can anyone help 1.) How do I enable GST_BUFFER debug to that I can see what is going on I usually do export GST_DEBUG=XXXX:[1-5] but using GST_BUFFER does not seem to work, I cant find anything in docs etc on how to turn on this debug using env variables. 2.) I use dynamic library loading and this seems to mean that both memwatch and mtrace are not too useful as I can not get the caller fields to be filled with anything other than a hex address which is not as helpful as I had hoped. Using valgrind on a mips platform does not work either. I would love to know how others are debugging memory leaks etc when using gstreamer on embedded devices. In the mean time finding out how to get GST_BUFFER debug to come out would be really helpful. hope you can help Daniel Laird ------------------------------------------------------------------------------ Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are powering Web 2.0 with engaging, cross-platform capabilities. Quickly and easily build your RIAs with Flex Builder, the Eclipse(TM)based development software that enables intelligent coding and step-through debugging. Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
Administrator
|
On Thu, 2009-03-12 at 12:27 +0100, Daniel James Laird wrote:
> All, > > I am having real difficulty debugging memory allocation in my application. > > Can anyone help > > 1.) How do I enable GST_BUFFER debug to that I can see what is going on > > I usually do export GST_DEBUG=XXXX:[1-5] but using GST_BUFFER does not > seem to work, I cant find anything in docs etc on how to turn on this > debug using env variables. > You can figure out all available debugging categories by doing the followoing: gst-inspect-0.10 --gst-debug-help The one you're maybe looking for are GST_REFCOUNTING, which will show you all the refcounting going on on gstreamer objects (including buffers and events). You basically want to see the refcount going back down to 0, causing the buffer to be released. If you're creating your own buffers, don't forget to set GST_BUFFER_MALLOCDATA(mybuffer) to the same value as GST_BUFFER_DATA(mybuffer), else it won't get freed when the buffer is released. > 2.) I use dynamic library loading and this seems to mean that both > memwatch and mtrace are not too useful as I can not get the caller > fields to be filled with anything other than a hex address which is > not as helpful as I had hoped. Using valgrind on a mips platform does > not work either. > > I would love to know how others are debugging memory leaks etc when > using gstreamer on embedded devices. In the mean time finding out how > to get GST_BUFFER debug to come out would be really helpful. > > hope you can help > Daniel Laird > > ------------------------------------------------------------------------------ > Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are > powering Web 2.0 with engaging, cross-platform capabilities. Quickly and > easily build your RIAs with Flex Builder, the Eclipse(TM)based development > software that enables intelligent coding and step-through debugging. > Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com > _______________________________________________ > gstreamer-devel mailing list > [hidden email] > https://lists.sourceforge.net/lists/listinfo/gstreamer-devel ------------------------------------------------------------------------------ Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are powering Web 2.0 with engaging, cross-platform capabilities. Quickly and easily build your RIAs with Flex Builder, the Eclipse(TM)based development software that enables intelligent coding and step-through debugging. Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
In reply to this post by Daniel Laird
Daniel James Laird schrieb:
> All, > > I am having real difficulty debugging memory allocation in my application. > > Can anyone help > > 1.) How do I enable GST_BUFFER debug to that I can see what is going on > > I usually do export GST_DEBUG=XXXX:[1-5] but using GST_BUFFER does not seem to work, I cant find anything in docs etc on how to turn on this debug using env variables. > > 2.) I use dynamic library loading and this seems to mean that both memwatch and mtrace are not too useful as I can not get the caller fields to be filled with anything other than a hex address which is not as helpful as I had hoped. > Using valgrind on a mips platform does not work either. > > I would love to know how others are debugging memory leaks etc when using gstreamer on embedded devices. In the mean time finding out how to get GST_BUFFER debug to come out would be really helpful. > 2) try to split use cases on the target and compare memory usage 3) try the arm port of valgrind on the target Stefan > hope you can help > Daniel Laird > > ------------------------------------------------------------------------------ > Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are > powering Web 2.0 with engaging, cross-platform capabilities. Quickly and > easily build your RIAs with Flex Builder, the Eclipse(TM)based development > software that enables intelligent coding and step-through debugging. > Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com > _______________________________________________ > gstreamer-devel mailing list > [hidden email] > https://lists.sourceforge.net/lists/listinfo/gstreamer-devel > ------------------------------------------------------------------------------ Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are powering Web 2.0 with engaging, cross-platform capabilities. Quickly and easily build your RIAs with Flex Builder, the Eclipse(TM)based development software that enables intelligent coding and step-through debugging. Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
Free forum by Nabble | Edit this page |