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 318574 - gnome-cd is unable to play CD
gnome-cd is unable to play CD
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins
0.8.11
Other Linux
: Normal major
: 0.8.13
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2005-10-11 14:06 UTC by Frederic Crozat
Modified: 2006-04-14 13:59 UTC
See Also:
GNOME target: ---
GNOME version: 2.11/2.12


Attachments
fix regression in gnome-cd AND goobox (951 bytes, patch)
2006-02-28 15:40 UTC, Frederic Crozat
none Details | Review

Description Frederic Crozat 2005-10-11 14:06:57 UTC
Version details: 0.8.11
Distribution/Version: Mandriva cooker

when using gstreamer backend, gnome-cd is unable to play any CD : after pressing
play, it keeps displaying 0:00/0:00 and no sound is produced

this is with gnome-cd 2.12.0, gstreamer and gst-plugins 0.8 CVS branch up to
date (20051011)

GST_DEBUG=cdparanoia:5 gnome-cd output : 
[a@cuba ~]$ gnome-cd --gst-debug=cdparanoia:5
DEBUG (0x8065920 - 313621:55:30.441241000)           cdparanoia(22855)
gstcdparanoia.c(785):cdparanoia_open:<cdparanoia> trying to open device...
DEBUG (0x8065920 - 313621:55:30.606961000)           cdparanoia(22855)
gstcdparanoia.c(887):cdparanoia_open: successfully seek'd to beginning of disk
DEBUG (0x8065920 - 313621:55:30.607346000)           cdparanoia(22855)
gstcdparanoia.c(895):cdparanoia_open:<cdparanoia> device successfully openend
DEBUG (0x8065920 - 313621:55:30.801492000)           cdparanoia(22855)
gstcdparanoia.c(1110):cdparanoia_event: seeked to 4294967295
DEBUG (0x8065920 - 313621:55:30.802448000)           cdparanoia(22855)
gstcdparanoia.c(1123):cdparanoia_event: configured for -1 -> 223632 sectors
DEBUG (0x8219ff8 - 313621:55:30.804702000)           cdparanoia(22855)
gstcdparanoia.c(581):cdparanoia_get:<cdparanoia> Sending flush
DEBUG (0x8219ff8 - 313621:55:30.805392000)           cdparanoia(22855)
gstcdparanoia.c(591):cdparanoia_get:<cdparanoia> Sending discont to
0:00:00.000000000

Seek has a very strange value.

If I comment gst_event_new_seek call in gst-cdparanoia-cdrom.c in gnome-cd (line
 931), cd is playing correctly (without seeking, of course).

gst-launch cdparanoia ! { queue ! osssink} is able to play cd without any problem.
Comment 1 Ronald Bultje 2005-10-11 14:41:34 UTC
http://cvs.freedesktop.org/gstreamer/gst-plugins/ext/cdparanoia/gstcdparanoia.c?r1=1.49.2.17&r2=1.49.2.18

Can you revert that patch and try again? It looks wrong, I have no idea why it
was applied.
Comment 2 Frederic Crozat 2005-10-11 17:09:16 UTC
I confirm reverting this patch fixed the problem.

The initial patch was applied to fix bug #312657 and #313209 (also reported on
Mandriva as http://qa.mandriva.com/show_bug.cgi?id=16266 ).

Strangely, goobox is working fine when patch is reverted..

I've also tried to revert gstcdparanoia.c to 0.8.11 version and gnome-cd is
working, as well as goobox. Very strange.
Comment 3 Frederic Crozat 2005-10-11 17:26:42 UTC
correction, if I use 0.8.11 version of gstcdparanoia.c or if I revert the patch
in current CVS, I get back goobox bug but gnome-cd is working
Comment 4 Ronald Bultje 2005-10-11 21:26:50 UTC
Gnome-cd does not use the same mechanism that sound-juicer, totem or goobox use.
Andy, please revert the patch, it is wrong. If it fixes the bug, this bug will
have to be fixed differently.
Comment 5 Ronald Bultje 2005-10-11 21:27:55 UTC
And please describe the goobox bug, I don't use goobox.
Comment 6 Frederic Crozat 2005-10-12 07:46:02 UTC
Ronald, just check bug #313209, it is goobox bug ie track info were not
retrieved correctly.
Comment 7 Andy Wingo 2005-10-12 17:53:15 UTC
Gnome-CD does not work for me neither before the patch from bug #313209 nor after.
Comment 8 Felix Riemann 2005-11-02 15:52:53 UTC
I cannot reproduce this. gnome-cd works fine with just my patch from bug #313209
applied and with a full cvs-checkout.

I can't think of a reason why my patch could be causing it. If gnome-cd works in
track-mode it shouldn't bother at all (functionality is the same). If it works
the old way (no track-mode) it would mean that there is something depending on
get_first_sector() returning 0 in that case or even worse cdparanoia itself
being unable to deliver a correct sector. But then it must happen here as well.

Maybe it would help to see what is assigned to the frames-variable by
frames = msf_struct_to_frames (&msf, 0)
in line 929 before the seek event is sent to gstreamer.
Comment 9 Andy Wingo 2006-01-13 18:53:29 UTC
Frederic, can you give the BRANCH-GSTREAMER-0-10 branch of gnome-media a try, together with GStreamer 0.10?
Comment 10 Tim-Philipp Müller 2006-01-14 10:08:28 UTC
It should be noted that that branch of gnome-media requires an up-to-date gst-plugins-base from CVS (new release hopefully out by monday), otherwise playbin won't do any cd playback.
Comment 11 Andy Wingo 2006-01-17 17:52:20 UTC
This is apparently not an urgent priority for the reporter...
Comment 12 Frederic Crozat 2006-01-17 18:00:55 UTC
Yes, it is a big priority for the reporter but he doesn't have the time to build and test software using gstreamer 0.10.x because he is also busy fixing other software...
Comment 13 Andy Wingo 2006-01-17 18:11:26 UTC
Sorry, didn't mean to sound harsh. Just that given your other obligations, we'll lower our priority of this one until someone can get back to us. Thanks for the feedback.
Comment 14 Andy Wingo 2006-02-16 09:27:26 UTC
Ping? :)
Comment 15 Frederic Crozat 2006-02-16 16:08:25 UTC
pong :)

bug is not reproducible with gnome-cd 2.13.92.1 + gstreamer 0.10.3 (well, CVS HEAD) to be precise.

Unfortunately, gst-plugins 0.8.12 which has been released last week has now this bug in it (it was only in 0.8 CVS branch before), which means gnome-cd won't work for people using 2.12 + gst-plugins 0.8.12.

I've cc Ronald about that.
Comment 16 Ronald Bultje 2006-02-16 23:57:08 UTC
Jezus fucking christ. Andy, I asked to revert, then you revert.

Now I have to do another release, this fucking harshly sucks. My time is very limited. Can't you guys do anything alone? :-(.
Comment 17 Ronald Bultje 2006-02-17 05:40:07 UTC
Sorry for the above, I exploded for a second. Andy, still, please revert patches when I ask you to revert them. This kind of stuff should not have been broken.
Comment 18 Frederic Crozat 2006-02-17 08:45:10 UTC
/me sends zen energy waves to BBB ;)

Before doing a new release, is there a way to fix the problem so that both gnome-cd AND goobox work ?

With 0.8.11, gnome-cd works but goobox doesn't.
With 0.8.12, gnome-cd is broken but goobox works.
Comment 19 Andy Wingo 2006-02-17 09:51:41 UTC
Hi Ronald,

No offense taken. I'm not sure that the patch is incorrect. That said I would be fine with reverting it, only that I'm heading off on holiday in an hour :/

I'll be back for a few days on Monday the 27th, then leaving again on that Friday. I'll get to it if I have time, but if you get to it before me, that's also ok.
Comment 20 Ronald Bultje 2006-02-17 14:03:15 UTC
Frederic,

yes, that is of course possible. The patch is incorrect, although the code in there is not the cleanest possible. If I remember correctly, the problem with goobox was that it needs the full CD length while opening the device (change_state() callback), and otherwise it doesn't matter because it always operates in track mode (so it would never get into the if (!src->track_mode) ... case). The correct fix/workaround would be to set track_mode to true before opening the device already, or so? I need a closer look at the code for that, but this should be logically possible.
Comment 21 Frederic Crozat 2006-02-28 15:40:14 UTC
Created attachment 60323 [details] [review]
fix regression in gnome-cd AND goobox

I've reverted the get_first_sector change from 0.8.12 => it fixes gnome-cd. And I've workaround goobox problem in cdparanoia_convert.

With this patch, I don't have any regression in gnome-cd, sound-juicer or goobox.
Comment 22 Frederic Crozat 2006-03-01 08:59:24 UTC
Hmm, I got a report that with this patch, goobox is not working : 
(goobox:23848): GStreamer-CRITICAL **: gst_pad_send_event: assertion `GST_STATE
(parent) >= GST_STATE_PAUSED' failed

** (goobox:23848): WARNING **: seek failed

but I'm unable to reproduce this bug myself.
Comment 23 Ronald Bultje 2006-04-14 13:59:54 UTC
2006-04-14  Frederic Crozat  <fcrozat@mandriva.com>

        Reviewed by:  Ronald S. Bultje  <rbultje@ronald.bitfreak.net>

        * ext/cdparanoia/gstcdparanoia.c: (get_first_sector),
        (cdparanoia_convert):
          Fix no-track-mode (e.g. gnome-cd), while not breaking non-track
          mode applications (e.g. Goobox). Fixes #318574.