<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
  <META NAME="GENERATOR" CONTENT="GtkHTML/3.26.0">
</HEAD>
<BODY>
Hi Stefan,<BR>
<BR>
Thanks for the information about gst-tracelib.&nbsp; We have used this library in the past to produce some great performance graphs.<BR>
<BR>
I see the library supports a <TT>GSTTL_LOG_SIZE</TT> variable.&nbsp; Does that keep the first log data until the buffer is full, or does it overwrite old data with the most current information?<BR>
<BR>
Todd<BR>
<BR>
On Sun, 2010-09-05 at 22:33 +0300, Stefan Kost wrote:
<BLOCKQUOTE TYPE=CITE>
<PRE>
Am 02.09.2010 04:15, schrieb Todd Fischer:
&gt; Hi,
&gt; 
&gt; We are seeing a behavior where we run a GStreamer application (doing audio /
&gt; video decoding), that runs continuously for several days, then suddenly locks up
&gt; in the middle of an A/V stream.  Our best guess is there is a defect in the ALSA
&gt; output driver.  We believe this because if we exit the application and try
&gt; aplay, it doesn't work.
&gt; 
&gt; I am wondering if there is a debug GStreamer logger element in existence or if
&gt; one is even possible or helpful.  Such a logger element could be put anywhere in
&gt; the pipeline. The logger would have circular buffers to keep track of all
&gt; potentially interesting recent history, such as pad activity, bus activity, and
&gt; any other relevant information. The circular buffer entries would all be
&gt; timestamped. When some event occurs (a file exists, a message/signal is
&gt; received, etc), the element would dump the history, and continue capturing new data.
&gt; 
&gt; This idea is after the pipeline locks up, you could cause the history logger to
&gt; dump it data, and then get an idea of what is suppose to be happening that isn't
&gt; not occurring.
&gt; 
&gt; Does such a logging element exist?  If not, does it make any sense to develop?

You can use gst-tracelib. It is a ld-preload thing for linux boxes. It can log
all dataflow (buffers, events, messages and queries) as well as structural
changes. Logging can be file, memory or socket.

Stefan

&gt; 
&gt; Todd
&gt; 
&gt; 
&gt; 
&gt; 
&gt; ------------------------------------------------------------------------------
&gt; This SF.net Dev2Dev email is sponsored by:
&gt; 
&gt; Show off your parallel programming skills.
&gt; Enter the Intel(R) Threading Challenge 2010.
&gt; <A HREF="http://p.sf.net/sfu/intel-thread-sfd">http://p.sf.net/sfu/intel-thread-sfd</A>
&gt; 
&gt; 
&gt; 
&gt; _______________________________________________
&gt; gstreamer-devel mailing list
&gt; <A HREF="mailto:gstreamer-devel@lists.sourceforge.net">gstreamer-devel@lists.sourceforge.net</A>
&gt; <A HREF="https://lists.sourceforge.net/lists/listinfo/gstreamer-devel">https://lists.sourceforge.net/lists/listinfo/gstreamer-devel</A>

</PRE>
</BLOCKQUOTE>
</BODY>
</HTML>