A couple of supplementary points arising from my reply above: 1. Why would a song have 2 genres - as shown in your example? Surely, a song is either 'Opera' or 'Death Metal'!
2. It seems to me that there are 2 distinct functions to the SqueezeCenter application. One is to gather the information abou all the tracks in the library and the other is to access that information to play the track (i.e. access and run the file). In fact, the application seems to be trying to do everything at the same time EVERY time it runs. That is where the processing wastage is arising. Let's treat these seperately: SCAN ---- In this part of the exercise the application should scan every track, playlist, favourite etc. in the library and build the database. Obviously, this is going to be quite a long process but once the tables have been built they should be easily accessible if they are well designed and indexed. PLAYLIST -------- When we want to play track, albums, playlists etc., the information is all now available and simply needs to be copied to the 'Playlist' area of memory. It doesn't need to be checked again until each track is due to be played. If that track doesn't exist, skip it until you find one that does. When the playlist needs to be saved, the only information needed is ID, Sequence number, Title, Album, Artist and file location. ERROR REPORTING --------------- During the scan process, Playlists could be checked for any tracks which no longer exist. These lines could easily be removed from the list and an error report could be written to the log. In all of the above, I am assuming the recommendations I have made regarding Many-to-Many tables and Indexes have been applied as I can't see any of these methods working efficiently without them. Seriously, if you want to discuss this further offline and you are a Slim Devices employee, please get in touch through my e-mail address in the forum database. I'd be delighted to help. -- larrettp ------------------------------------------------------------------------ larrettp's Profile: http://forums.slimdevices.com/member.php?userid=10191 View this thread: http://forums.slimdevices.com/showthread.php?t=45261 _______________________________________________ discuss mailing list discuss@lists.slimdevices.com http://lists.slimdevices.com/lists/listinfo/discuss