I'd need to rewrite it in C but it should translate fairly easily, especially given what we now know about CD+G.

Which, presumably, is more than you did before the first cut.  :-)

Yeah, it was easy enough to knock something up that worked on my small collection of tracks, but since then I've had a few people (you included) send me CD+Gs that interpreted the spec differently. It's been all quiet for some time now, so it must be perfect <ducks>.

Hmmm... Is there a standardized way to get raw tracks off a Redbook CD
in Linux?  Doesn't XMMS do some of this?

Pass. When I wrote cdgtools, the only useful tool I could find for reading subchannel data was cdrdao. We can presumably package up ATAPI commands and pass them to the relevant Linux driver, but cdrdao might take away the pain of handling a range of drives with different supported commands etc.

rip just the CD+G data without any MP3 encoding. You can then play this back as usual with pycdg.py while the CD track plays. Should be relatively quick to implement but you pay the price of the time spent doing the rip before playback.

Could you sync it, though?

Well there's the new "no audio" option in pycdg. This uses the system clock to play the CD+G in real time. It would need to know if you had paused or rewound etc, but it could probably do the job. You can also poll the pygame CD playback to find out the current playtime but it's only one second accuracy.


This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
Pykaraoke-discuss mailing list

Reply via email to