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 76537 - Audio CD library support
Audio CD library support
Status: RESOLVED FIXED
Product: rhythmbox
Classification: Other
Component: general
unspecified
Other Linux
: Normal enhancement
: ---
Assigned To: RhythmBox Maintainers
RhythmBox Maintainers
Depends on:
Blocks: 96917
 
 
Reported: 2002-03-26 23:13 UTC by Seth Nickell
Modified: 2004-12-22 21:47 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Seth Nickell 2002-03-26 23:13:54 UTC
Audio CD library support
Comment 1 Olivier Martin 2002-08-22 08:48:18 UTC
I propose to target this one for the 0.4 release, we need to have at
least support for playing cds. Some stuff has already been done and we
saw that it's not that hard with gstreamer to only play cds through
cdparanoia...

I thought quickly of a design for that. We could for example make a
new implementation of monkey-media-stream creating a bin:
(cdparanoia ! volume)

In order for this to work, the code creating the source in
monkey-media-stream might be moved in the monkey-media-audio-stream. 

Of course we could try (again) to use vfs for this but... it's a pain ;)
Comment 2 Jorn Baayen 2002-08-22 13:09:41 UTC
Agreed, we need this and ripping for 0.4.

I htink we should just do something like check the uri for protocl
type in mmstrema, if cdda:// we use cdparanoia as src element
otherwise gnomevfs. (Like one of your very first patches for this,
iirc ;) )

But we need some more stuff to get good audiocd support,
we need something like a MonkeyMediaAudioCD object, supporting the
something like the following methods:

gboolean monkey_media_audio_cd_is_available (MonkeyMediaAudioCD *cd)
GList *monkey_media_audio_cd_list_audio_tracks (MonkeyMediaAudioCD
*cd); // list of uris

and a signal like void (*cd_availability_changed) (MonkeyMediaAudioCD
*cd, gboolean available)

And then we need cd support in monkeymediastreaminfo, we need to check
the uri for cdda://, if it's that we should invoke a streaminfo impl
that fetches stuff from freedb.
Comment 3 Seth Nickell 2002-08-24 19:48:10 UTC
I'm concerned we're taking gstreamer niftiness a step too far and
wallowing in our beautiful abstractions a little too much ;-) CD
Paranoia is I/O internsive which causes many linux systems with many
CD drives to be less than responsive. In addition, it can be a CPU
hog, and will also not work at above 1x with many CD/drive
combinations (not so great cd drives combined with scratched CDs).

The only good reason I can think of to use gstreamer's CD paranoia
plugin here is because its easier. We should use vfs/cdparanoia
sources for ripping CDs to other formats, but not for playing.
Comment 4 Olivier Martin 2002-08-24 20:41:42 UTC
These are really valid points, but...

Jorn and I already tried to use the existing the vfs plugin (broken)
and to create a new one: without success... So unless someone comes
with the right vfs implementation this feature will not be added to
RB, except if we use gstreamer.

I agree with your concerns but cdparanoia is better than nothing ;)
Comment 5 Seth Nickell 2002-08-25 01:35:31 UTC
Who needs VFS at all? VFS would just use CD paranoia too.

CD-ROM drives on PCs (I believe this is different on Macintosh) can be
instructed to play certain tracks. The sound goes through a cable
straight to the sound card. There are plenty of libraries that can do
this, or you can see the gnome-media/gnome-cd sources for examples on
doing it.
Comment 6 Jorn Baayen 2002-08-25 15:45:21 UTC
Apple and some newer pcs (like mine) dont have this cable, but indeed
it used to be standard at least a while ago.

Since we cannot detect it's availability, i think we should have a
system wide gconf boolean for cd playback behaviour, and have all apps
including gnome-cd stick to it. (Once we get both behaviours
implemented in monkeymedia, it will be trivial to support if they use mm)
Comment 7 Seth Nickell 2002-08-25 19:04:01 UTC
So on Windows, does it automatically detect that you don't have this
cable and play through ripping? If so, presumably there's *some* way
to find out this information.
Comment 8 Christophe Fergeau 2002-09-11 08:57:22 UTC
No, I think windows doesn't automatically detect it. Iirc, it default
to use "digital playback" ie it uses a cdparanoia-like method, but
hidden somewhere in the cd drive properties, there is a "use digital
playback" checkbox in case you don't want to use it. 
Comment 9 Mark Finlay 2002-09-13 20:49:28 UTC
Digital Playback is a must - it's one of the really great thing about
windows music players. 

For those of us with that cable attached the old fassioned CPUless cd
playing would be great - but i dont know how easy it is to control and
monitor the playback in the rb interface.
Comment 10 Olivier Martin 2002-10-25 09:29:54 UTC
We can't use gst-0.4.1 due to recent changes in the cdparanoia plugin,
so this bug shouldn't block the 0.4 release.