Summary: | Audio CD playing hangs for a short while on each track | ||
---|---|---|---|
Product: | [Applications] amarok | Reporter: | Christoph Neuroth <delmonico> |
Component: | general | Assignee: | Amarok Bugs <amarok-bugs-null> |
Status: | RESOLVED FIXED | ||
Severity: | normal | ||
Priority: | NOR | ||
Version First Reported In: | 1.4.2 | ||
Target Milestone: | --- | ||
Platform: | Ubuntu | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Christoph Neuroth
2006-08-26 11:38:07 UTC
I can confirm this. Also, playlist population takes extremely long, and in the meantime Amarok prints messages like these: amarok: ERROR: : couldn't create slave : Unable to create io-slave: klauncher said: Unknown protocol 'cdda'. SVN commit 578458 by markey: Fix: AudioCD playback with xine-engine would stutter and freeze Amarok. The problem was that Engine::metaDataForUrl() was called repeatedly (3 times) in CollectionDB::bundleForUrl(), while playback was already started. This blocked xine. BUG: 133015 M +1 -0 ChangeLog M +0 -22 src/collectiondb.cpp --- trunk/extragear/multimedia/amarok/ChangeLog #578457:578458 @@ -12,6 +12,7 @@ * Don't report "/dev/hd" style devices as new media devices. (BR 127831) BUGFIXES: + * AudioCD playback would stutter and sometimes freeze Amarok. (BR 133015) * DAAP client shows connection errors to the user and no longer says "Loading" perpetually. After a failed connection, the user can now try again. --- trunk/extragear/multimedia/amarok/src/collectiondb.cpp #578457:578458 @@ -3463,28 +3463,6 @@ bundle->copyFrom( peb ); valid = true; } - else if( bundle->url().protocol() == "audiocd" || bundle->url().protocol() == "cdda" ) - { - // try to see if the engine has some info about the - // item (the intended behaviour should be that if the - // item is an AudioCD track, the engine can return - // CDDB data for it) - Engine::SimpleMetaBundle smb; - if ( EngineController::engine()->metaDataForUrl( bundle->url(), smb ) ) - { - valid = true; - bundle->setTitle( smb.title ); - bundle->setArtist( smb.artist ); - bundle->setAlbum( smb.album ); - bundle->setComment( smb.comment ); - bundle->setGenre( smb.genre ); - bundle->setBitrate( smb.bitrate.toInt() ); - bundle->setSampleRate( smb.samplerate.toInt() ); - bundle->setLength( smb.length.toInt() ); - bundle->setYear( smb.year.toInt() ); - bundle->setTrack( smb.tracknr.toInt() ); - } - } } return valid; |