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 338711 - Internal data flow error with latest updates for FC5 with gstreamer repository
Internal data flow error with latest updates for FC5 with gstreamer repository
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gstreamer (core)
0.10.4
Other Linux
: Normal blocker
: 0.10.5
Assigned To: GStreamer Maintainers
GStreamer Maintainers
: 338588 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2006-04-16 16:21 UTC by William Lovaton
Modified: 2006-04-22 21:36 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
GST_DEBUG info (362.68 KB, application/x-gzip)
2006-04-19 02:38 UTC, William Lovaton
  Details
patch to core that removes regressions (4.50 KB, patch)
2006-04-20 13:26 UTC, Wim Taymans
none Details | Review

Description William Lovaton 2006-04-16 16:21:44 UTC
Today I just updated some packages with yum, it included the following gstreamer packages:
gstreamer-tools.i386 0.10.4.2-0.gst.1.5
gstreamer.i386 0.10.4.2-0.gst.1.5
gstreamer-plugins-base.i386 0.10.5.2-0.gst.1.5

Now Rhythmbox can't play many of my mp3 files.  I have 429 files and now only 143 can be played.  The error I get is "Internal data flow error. file:///somefile.mp3".

This are my gstreamer packages right now:
[root@athlon2000 ~]# rpm -qa | grep -i gstreamer
gstreamer-ffmpeg-0.10.1-0.gst.1.5
gstreamer-plugins-good-0.10.2-1
gstreamer-plugins-ugly-0.10.3-0.gst.1.5
gstreamer-plugins-base-0.10.5.2-0.gst.1.5
gstreamer-0.10.4.2-0.gst.1.5
gstreamer-tools-0.10.4.2-0.gst.1.5
gstreamer-plugins-bad-0.10.1-0.gst.3.5

Note that gstreamer-plugins-good is still the one that comes with Fedora Core 5.  Any plans to update this in the gstreamer repository?

Any ideas about this problem? It was working just fine before the update.

Note that I don't have gstreamer-universe installed.  Should I install it?
Comment 1 Tim-Philipp Müller 2006-04-16 18:29:03 UTC
Marking as blocker for now, should at least be looked into before the release. There are quite of few similar reports.
Comment 2 Tim-Philipp Müller 2006-04-18 08:42:16 UTC
This change looks like it might be responsible:

 2006-04-05  Michael Smith  <msmith@fluendo.com>

        * gst/gstpipeline.c: (gst_pipeline_init):
          When we create a pipeline bus, initially create it in flushing mode.
          Fixes leaks in at least one test, and makes a new pipeline work the
          same as one that has gone to READY and then back to NULL.

Sinks are opened in the NULL => READY transition, so if the bus is by default flushing before the pipeline reaches READY state, error messages sinks post on the bus when opening fails are just dropped.
Comment 3 Tim-Philipp Müller 2006-04-18 09:23:02 UTC
Confirmed. Not setting the bus to flushing in the gst_pipeline_init() makes totem see the proper error message originally posted by the sink.
Comment 4 Tim-Philipp Müller 2006-04-18 09:28:52 UTC
*** Bug 338588 has been marked as a duplicate of this bug. ***
Comment 5 Tim-Philipp Müller 2006-04-18 09:35:16 UTC
William, could you start rhythmbox from the command line like this and then reproduce the error and attach the log:

 $ GST_DEBUG=*:4 rhythmbox 2>&1 | gzip > dbg.log.gz

Comment 6 Wim Taymans 2006-04-18 09:40:56 UTC
this automatic flushing things turns out to be too automatic and introduces inconsistencies. You can turn off the automatic flushing with a property on GstPipeline. Applications that know what they are doing might just want to do that and explicitly flush/read bus messages.
Comment 7 Tim-Philipp Müller 2006-04-18 11:37:03 UTC
I think i might have been too quick to mark bug #338588 as a duplicate of this bug.

I believe there are currently two blocker issues with the core prerelease:

 (a) the issue discussed here: changes to pipeline bus flushing
     cause error messages from sinks to be dropped (this is #338588)

 (b) up until the current prerelease the core didn't always check
     caps for compatibility properly everywhere. This means that
     the current core exposes bugs in some elements in the current
     release of gst-plugins-good (0.10.2), most notably id3demux
     and apedemux. Those elements don't change/set caps on outgoing
     buffers correctly in the 0.10.2 release, which might cause
     'Internal Flow Error' errors due to non-negotiated flow returns
     when the core catches incompatible caps. I haven't confirmed
     this yet, but I am fairly sure this is the case and is what
     the original bug reported here is about.


If this is true, we better release -core, -base, -good together or risk breaking music playback until the next -good release ...




Comment 8 William Lovaton 2006-04-18 12:27:34 UTC
(In reply to comment #5)
> William, could you start rhythmbox from the command line like this and then
> reproduce the error and attach the log:
> 
>  $ GST_DEBUG=*:4 rhythmbox 2>&1 | gzip > dbg.log.gz
> 

I'll do this as soon as I get home tonight.
Comment 9 William Lovaton 2006-04-19 02:38:33 UTC
Created attachment 63841 [details]
GST_DEBUG info

I decided to run this with totem instead of rhythmbox for practical reasons, still I get the same error message.

I did the following to get this log:
$ export LANG=en_US.UTF-8
$ GST_DEBUG=*:4 totem 2>&1 | gzip > dbg.log.gz

File -> Open... -> (Select an mp3 file) -> Ok -> Internal data flow error

That's all, I hope this helps.
Comment 10 Wim Taymans 2006-04-20 13:26:13 UTC
Created attachment 63947 [details] [review]
patch to core that removes regressions

following patch undoes:
http://webcvs.freedesktop.org/gstreamer/gstreamer/gst/gstpipeline.c?r1=1.132&r2=1.133

and disables changes done by: http://webcvs.freedesktop.org/gstreamer/gstreamer/gst/gstpad.c?r1=1.498&r2=1.499
Comment 11 Thomas Vander Stichele 2006-04-22 21:36:30 UTC
commited to head