Quantcast
Channel: Squeezebox : Community : Forums
Viewing all articles
Browse latest Browse all 6235

1) A flexible browse menu 2) Additional User tags

$
0
0
I have been wondering whether it might be possible to develop a flexible menu system. The idea would be that the user could configure a list of the tags he/she would like to use dynamically. Whatever fixed menus are available, there’s always some other combination of tags one might quite like to be able to select on, including technical information.

A new menu entry would be created, ‘Browse Music’ (or some such name), to access the music library using these tags in any order.

On selecting the new menu all the specified tag names are displayed. On selecting one, a list of all tag values is displayed, maybe with an initial Alphabetical (A, B, C…) selection when there are over 100 or so items. On selecting one, a list containing the following is displayed:

• Number of matching Albums
◦ selecting this lists matching albums and thence to tracks - showing all Albums and/or tracks that match the current criteria
• Number of matching tracks
◦ selecting this lists tracks that match the current criteria
• A list of all tags for which multiple values are available, thus if Artist was chosen first, no Artist tag would be displayed at this level unless there are tracks matching the selected one which have additional Artists - if that Artist only performs on tracks for one Composer, the Composer tag is not displayed
◦ selecting a tag repeats the process so far at the next level down

Erland’s Custom Browse and Custom Scan had something similar to this (see https://wiki.slimdevices.com/index.p..._music_by_tags for how it can be used for Classical Music, but it applies quite generally). His code is available for inspection, but he no longer maintains the code so these plugins may well, in time, become defunct.

The Minimserver application provides a very similar menu structure to this.

My own list of tags that I might want to include might be something like:

Artist
Album Artist
Conductor
Composer
Band
TrackArtist
(the above 6 presumably subject to the usual LMS artist combination configuration rules - I have never quite understood the difference between Artist and TrackArtist)
Genre
Year
Content_type
Channels
Samplesize
Samplerate (or a range)
Bitrate (or a range)
Rating (or a range)

Library Views might not be needed to be taken into account, given the flexible nature of the menu.


All I could to help would be to test anything that was under development. I used to be a programmer, but my skills are far too old and creaky. I also know nothing of the internals of LMS except the database structure.


I do have to admit to having an ulterior motive. If the above was possible, practical and was produced it might be great for loads of people.

Given this type of menu it might also then be feasible for someone to develop an additional project (plugin) adding a new database table with non-standard tags. In effect a limited form of Custom Scan. If these tags could be included in the above selection this would be of enormous benefit to some classical (and maybe other) music lovers. There is an irresolvable debate about which tags to include, so a flexible but limited set of tags might be implemented.

I would add up to 5 tags. One more artist-type tag (plus sort-form), one date-type tag, 2 text tags (possible some with sort-forms) and a numeric tag. I’m not sure it matters what they are called. In fact flexible naming might be the solution to the debates amongs classical enthusiasts. If the tags could be defined by the user, col1 - tag “xyz”, col2 - tag “abc” and so on (in a separate table just mapping user tag names to table column names) and the users’ tag names then made available for inclusion in the dynamic menu, no special extra menus would be needed for other types of music. The dynamic menu would provide access to each users’ preferred tags.

For me, I would add ‘WORK’ (and WORKSORT), ‘MOVEMENT’, WORKARTIST (an Artist-type plus WORKARTISTSORT), CREATED (the date the tag was initially created which for me is the date acquired) and RECORDING (containing information about the recording itself according to the user’s preferences). I also include a RATING tag (0 to 99) in my flacs. The extra ARTIST type would ideally be added to the contributors table (if not already present), with an extra role value in contributor_track and contributor_album (I’m not sure if the latter would be needed).

The new tables would then be something like:

UserTags - rebuilt after every system rescan, each row containing:

id
track (key to tracks table)
col1 - value of 1st user tag - text
col2 - value of 2nd user tag - text
col3 - value of 3rd user tag - date form
col4 - value of 4th user tag - number
col5 - value of 5th user tag - text, possibly ‘artist’ format for contributors table
Col1s - value of 1st user tag sorted
Col2s - value of 2nd user tag sorted
Col5s - value of 5th user tag sorted

UserTagNames, one row, six columns (or 5 if no primary key id is needed)

id
col1 - user tag name 1 (append SORT for sort form)
col2 - user tag name 2 (append SORT for sort form)
col3 - user tag name 3
col4 - user tag name 4
col5 - user tag name 5 (append SORT for sort form)


You probably think I’m mad. Many people do.

Is anyone out there interested?

Viewing all articles
Browse latest Browse all 6235

Trending Articles