After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 653840 - MP3 stream starts playing with strange noise
MP3 stream starts playing with strange noise
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins
0.10.32
Other Linux
: Normal normal
: NONE
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2011-07-01 20:30 UTC by michael
Modified: 2012-10-06 11:57 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
gst-feedback output (151.82 KB, text/plain)
2011-07-01 20:30 UTC, michael
  Details
playsink: do not use dangling pointers to freed objects (4.06 KB, patch)
2011-08-15 18:19 UTC, Vincent Penquerc'h
reviewed Details | Review

Description michael 2011-07-01 20:30:14 UTC
Created attachment 191118 [details]
gst-feedback output

The following command plays a noise of approx. 0.5s. It seems as if the meta-data header is played before the actual MP3 stream starts.

gst-launch -v playbin2 uri=http://gffstream.ic.llnwd.net/stream/gffstream_w12a
Comment 1 David Schleef 2011-07-04 19:57:39 UTC
I was only able to occasionally reproduce this.  And by "reproduce", I actually mean segfault:

  • #0 g_object_set
    from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
  • #1 update_av_offset
    at gstplaysink.c line 2701
  • #2 gst_play_sink_reconfigure
    at gstplaysink.c line 2559
  • #3 sinkpad_blocked_cb
    at gstplaysink.c line 2902
  • #4 handle_pad_block
    at gstpad.c line 4050
  • #5 gst_pad_push_event
    at gstpad.c line 5223
  • #6 gst_proxy_pad_event_default
    at gstghostpad.c line 143
  • #7 gst_pad_send_event
    at gstpad.c line 5399
  • #8 stream_changed_data_probe
    at gstplaybin2.c line 2394

Comment 2 Vincent Penquerc'h 2011-08-15 18:19:23 UTC
Created attachment 193887 [details] [review]
playsink: do not use dangling pointers to freed objects
Comment 3 Vincent Penquerc'h 2011-08-15 18:20:51 UTC
I have doubts that's the same issue as reported, but the crash from this stack trace is now fixed.
Comment 4 michael 2011-08-15 20:34:48 UTC
When I use the following plugins directly, the noise does not occur:

* souphttpsrc
* mad
* alsasink

So the issue seems to be related to the playbin2 plugin.
Comment 5 Tim-Philipp Müller 2011-08-17 11:30:00 UTC
Comment on attachment 193887 [details] [review]
playsink: do not use dangling pointers to freed objects

Hrm, I'm not sure about this:

 - is the G_OBJECT() run-time cast/check kosher here? Won't it throw a warning?

 - weak unrefs generally aren't thread-safe

 - chain isn't refcounted, the code seems
   to assume that the chain will
   always live longer than the ts_offset
   object, which may not be the
   case (then the callback will
   likely just crash afaict)
Comment 6 Tim-Philipp Müller 2011-08-17 11:52:25 UTC
>  - weak unrefs generally aren't thread-safe

Sorry, that's not actually true. Weak *pointers* aren't threadsafe IIRC, but here one could take some lock (e.g. playsink's?) I guess.

Another issue is that we may also need some more weak unrefs somewhere strategically.
Comment 7 Vincent Penquerc'h 2011-08-17 14:20:59 UTC
Well, it seems the issue is a bit more intricate than what I thought.
It seems similar or the same as https://bugzilla.gnome.org/show_bug.cgi?id=656715
I shall leave this for now to see if someone who knows the code pops in :)
Comment 8 Sebastian Dröge (slomo) 2011-08-24 05:58:10 UTC
*** Bug 657209 has been marked as a duplicate of this bug. ***
Comment 9 Vincent Penquerc'h 2011-09-30 13:05:09 UTC
Comment on attachment 193887 [details] [review]
playsink: do not use dangling pointers to freed objects

That bug was fixed by ds in another way.
Comment 10 Tim-Philipp Müller 2011-12-09 17:13:08 UTC
What's the deal with this bug? Is it fixed? Has anyone re-tested with GStreamer git? I don't see any problems with this stream with git.
Comment 11 Vincent Penquerc'h 2012-01-06 12:25:59 UTC
(In reply to comment #10)
> What's the deal with this bug? Is it fixed? Has anyone re-tested with GStreamer
> git? I don't see any problems with this stream with git.

ds fixed the issue he was seeing via a91237434271ed17d59bf95e0762dc9161c09864 in -base.
There is some doubt that this is the issue the original report mentioned though.
In any case, works for me too with latest git.
Comment 12 Akhil Laddha 2012-02-22 10:52:21 UTC
closing the bug as per comment#11. 

Michael, please feel free to reopen the bug in case you can reproduce the problem with latest gstreamer version.