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

Reply via email to