In fact the only missing piece apart from digital mixing is a lack of
straight-from-CD CD+G player, which is something I'm interested in
doing anyway, and I think Python can do it. Any hints or thoughts,

I've given it some consideration in the past but not in great detail. Pygame can play audio tracks on a CD but (unsurprisingly) there is no facility to read the subchannel data.

Initial thoughts on the simplest thing to implement would be to combine a cdrdao/cdgrip pass with pygame's CD playback. It's just a hack but it buys you something. After selecting a track, you spawn off a process to rip just the CD+G data without any MP3 encoding. You can then play this back as usual with 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.

Doing it *properly*.. that's a different thing. I don't know, for instance, what the usual method would be for extracting the subchannel data on Linux. Whether you'd need to use a library like cdrdao, or whether it's just as easy to get what you need straight from the OS. I'm thinking something like Python bindings for cdrdao to read the subchannel data - and if you're doing this in real time then presumably you'd want to read the audio data at the same time, rather than have two proceses seeking around the disk. I'd need a deeper look into the likes of cdrdao to comment any further than that.

The link is Coral Cache-ified by the way because I'm expecting heavy
traffic in a few days; a not-so-friendly company is threatening to sue
me because I posted my experience with them on my site, and
negotiations broke down recently. I went public with the details, and
Tom Martino (the "Troubleshooter") is going to have me on his radio
program Monday to hash this stuff out. Heh. This should get
interesting fast :)

Itching to hear how this pans out.


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