RFC: Refactor CD player logic from kscd

Richard Lärkäng nouseforaname at home.se
Wed Mar 23 18:06:50 GMT 2005


On Wednesday 23 March 2005 04.06, Shaheed wrote:
> On Tuesday 22 March 2005 14:03, Richard Lärkäng wrote:
> > Do you think it could be used by kaudiocreator too? I don't know where it
> > should be placed if it is though.
>
> To be quite honest, I'm not at all sure what should happen with
> kaudiocreator. I observe:
>
> 1. It is incredibly slow. It seems to copy the data from CD to disk before
> reading back from disk, encoding and writing back to disk.
>
> 2. I'm no expect on the tools it uses to do its work, but AFAICS, some of
> them at least can do the whole thing in one pass. Even if they cannot, at a
> minimum, it should read the data from the CD and send it to the encoding
> tool without the extra disk writes and reads.

I don't really think it matters that it writes the file to disk and then 
encodes it. See bug #98477, it seems to be a problem with the polling code 
that makes the ripping from the CD really slow.

> BTW, if you get a moment, I would appreicate someone to sanity check the
> discChanged signal emitted by kaudiocreator. It is connected to the
> discChanged slot in kscd, and though I know very well that signals are
> synchronous, putting kdDebug()'s before, in, and after the signal often
> seems to show that the slot is not invoked! !!$&*!! Even though the
> before-and-after mesages are printed. (Hence the "hack" to call this
> routine from trackUpdate()).

From a quick look at it, it seems OK. Do you have any way of reproducing the 
problem, because when I commented out the call in trackUpdate() and added 
some kdDebug()'s everything got called as it should.

> I think I fixed all the issues except the CDB lookup (battery running out, 
> left cord at work :-().

Yeah, it looks a lot better now. The only issue I could find was that when I 
play a CD and then either stop it or change the CD, the Play/Pause button 
doesn't change from Pause to Play.

> 
> Thanks, Shaheed

Richard



More information about the kde-multimedia mailing list