I read Ceejay's last post and Pat's.  I tried to find some information
of the DB design as it exists.

I looked around in the SS v6.2.1 source and found a dbcreate.sql file
for SQLLite and one for MySQL.  Based on what I see in those files and
your comments, I made some observations:

1. The album table plays a fairly central role.  The album tag value is
probably taken from this table with hardwired logic. That makes it
harder to treat it as just another tag to make a datadriven UI.

2. I see a role field in the contributor_track and contributor_album
tables.  Are these fields derived from the tab name?  If not, maybe the
original information about tab name and value has been lost.  And it
probably isn't easy to separate composer from artist so that you can
browse one and not the other.  If you can translate the role back into
the original meaning (composer, conductor, artist), perhaps you could
search on just one of the roles. And in a later step, search on another
role.  If not, then step-by-step browsing isn't going to work for me. 

3. It looks as though the tag database is not very general and it is
intertwined with the general functionality of Slimserver.  That makes
it any changes harder to implement and less likely to happen.

4. I see that there are genres and genre_track tables. So that is
hardwired too.  I'd guess that if a tag doesn't have a table defined
for it, that tag isn't kept in the database. 

5. If I were making decisions, I'd consider separating out the tag info
into a new track_tag table with the following fields: 

a primary key of course, 
a reference to the corresponding track, 
a tag name and 
a value for that tag.  

Then you could make the browse and search logic data driven and quite
general. I'm certainly not making the decision and I'm not likely to be
doing the work so it probably won't happen. 

6. Stuffing various tag values into the contributor table makes browse
lists bigger and means that the UI won't scale well for me.  
---
I could have been looking at the wrong file to see the database design
or not understanding it correctly. So my observations might be
completely wrong.

---
Now I understand Ceejay's concern for making the album tag unique. 
However, depending on an album name that is set outside SS by software
you don't specify and don't control is a risk.  Suppose two sets of
tracks have the same album name.  As I found, SS/SB will return both
sets when I browse by artist and then select an album. They individual
tracks will play in some mixed up order.  If one set of tracks has a
severe replay gain settng, what happens you you play the other set?

Perhaps the Beginner's Guide for Classical Music and other SS/SB
documentation should contain a strong warning that if the album name
isn't unique, BAD THINGS MAY HAPPEN. 

---
Altogether, not encourging.

Bill


-- 
Listener
------------------------------------------------------------------------
Listener's Profile: http://forums.slimdevices.com/member.php?userid=2508
View this thread: http://forums.slimdevices.com/showthread.php?t=18767

_______________________________________________
Discuss mailing list
[email protected]
http://lists.slimdevices.com/lists/listinfo/discuss

Reply via email to