Hi!
On Wed, Jan 26, 2011 at 08:25:22AM -0800, Niels Mayer wrote:
Here's one more backtrace that's even more
interesting. Perhaps a
varargs error: see gst_structure_id_set_valist() ??
...............................................
The problem is that the three backtraces you sent me point to different
locations; one of them actually has a gst123 function in it, the other two
backtraces only include symbols of the gstreamer libs. Now of course it could
be that gst123 does something wrong (has a bug), and that only some time after
the actual bug occurred an unrelated function crashes due to memory corruption.
Or it could be that gst123 has nothing to do with any of it, and that some part
of the GStreamer framework causes the crash; for instance a decoding plugin, an
audio driver or whatever.
So one way to proceed would be to try to reproduce the same bug with another
GStreamer based player. If that succeeds, gst123 is not the problem. If it
fails, we probably cannot say for sure if gst123 is the problem, because gst123
may be using GStreamer in a different but equally valid way.
In any case, your stack traces have given me the opportunity of reading the
code in gst123 a few more times, and I've done two changes; one of them should
make gst123 abort with an assertion if the code is problematic, the other
change should fix a possible crash, but I am not sure if that is the crash you
had. But it would be great if you reran your test with the newest gst123 git
version.
Generally, valgrind would also be a great tool for debugging such problems,
however, I suppose it won't be fast enough to play your radio stream...
Cu... Stefan
--
Stefan Westerfeld, Hamburg/Germany,
http://space.twc.de/~stefan