PDA

View Full Version : Idle thoughts on multiple users, filtering, etc



oktup
2006-02-14, 09:19
Hi all

I'm on the verge of ordering my first SB3 (server's built, am now ripping!) and have been thinking about how to differentiate between my stuff, my gf's stuff, and the stuff we both have. This thread (http://forums.slimdevices.com/showthread.php?t=18164) seems to be along the same lines of what I was thinking... at the risk of re-treading old ground:

Collections. ('Libraries' would work too, but I think 'Collections' is slightly more appropriate :)

A collection is simply a set of songs. I might define:


"Everything" = All music
"Oktup's songs" = All music WHERE owner CONTAINS oktup
(or maybe)
"Oktup's songs" = All music WHERE filepath CONTAINS music/oktup/


And so on for other users. But there's nothing to stop you creating collections for other purposes, too, for example:


"Polite Company" = All music WHERE genre DOESN'T CONTAIN explicit AND comments DOESN'T CONTAIN explicit
"Retroelectro" = All music WHERE year STARTS WITH 198 AND genre IS IN electro, synthpop, new-wave
"So last century" = All music WHERE year BEFORE 2000


So basically, collections are pretty much like Smart Playlists. The difference being, when you pick one, all songs not in that collection no longer exist (or so it seems). Whereas playlists live 'on top' of your library, collections 'become' your library.

So, if I go to "Change Collection" on my Squeezebox and select "Oktup's songs", I can browse around the albums, play random tracks etc, without ever coming across any of my gf's stuff. If I choose the "Polite Company" collection, I can hand over the remote and leave the room, safe in the knowledge that the vicar won't accidentally stumble across "Killing in the Name Of". And so on.

From a technical POV, this would be enacted by using views on the database, eg by issuing a CREATE OR REPLACE VIEW bedroom_squeezebox AS SELECT * FROM whatever WHERE [my_collection_parameters].

The criteria defined for Collections could also be used to filter selections at any stage of browsing - in effect, becoming Smart Playlists. So I might Browse Artists, pick They Might Be Giants, then choose to 'Filter By' 'So Last Century' (leaving me with all TMBG music released before 2000), then filter again by 'Polite Company', 'Most Recently Played' and so on. If I 'over-specify' and end up with no matching songs, I'll get a notification, and will be backed out a level. I can obviously step back out manually, if desired, eventually ending up back with the full set of whatever 'root collection' I had currently selected.

Similar, but complementary, would be 'ownership' in the security sense, where every item has an owner(s) and can be made public/shared/private as appropriate. But I'll stop waffling for now. Does that make sense? Is it intuitive or rubbish? Any improvements?

fuzzyT
2006-02-14, 10:04
I definitely support your request for some sort of
library/collection/profile system.

In particular, I think the idea of defining collections as some of
filtered specification of the entire database of scanned tracks has
quite a bit of merit.

Whether the filter keys of path, user, or some other attribute such as a
tag is up for discussion.

I'm not sure there's a clear winner, but I tend to think about this in
terms of paths to music directories. Combine this with the ability to
define profiles(users) and connect profiles to whichever of these paths
they like and I think you've gone a long way to solving this. Some
means of indicating which profile should be active would needed for both
the web and player UI.

Interestingly, these profiles wouldn't need to be defined just for
individuals. They could be defined for moods, styles, periods, party
themes, etc.

There has been discussion of this before, but as the feature is still
pending, I don't think it's out of bounds to continue it.

Some references:
http://forums.slimdevices.com/showthread.php?t=15651
http://forums.slimdevices.com/showthread.php?t=15652

And there are some bugzilla bug IDs for related enhancements mentioned
in those threads.

Implementation of this feature is highly dependent on having a database
that performs well for filtered queries and with multiple concurrent
users. It's likely that some of the delay in getting this out has had
to do with sorting all of those bits first. Getting SS on mySQL should
open up the possibilities.

--rt

Pooh22
2006-03-23, 16:38
On Tue, Feb 14, 2006 at 12:04:42PM -0500, ron thigpen wrote:
> I definitely support your request for some sort of
> library/collection/profile system.
>
> In particular, I think the idea of defining collections as some of
> filtered specification of the entire database of scanned tracks has
> quite a bit of merit.
>
> Whether the filter keys of path, user, or some other attribute such as a
> tag is up for discussion.
>
> I'm not sure there's a clear winner, but I tend to think about this in
> terms of paths to music directories. Combine this with the ability to
> define profiles(users) and connect profiles to whichever of these paths
> they like and I think you've gone a long way to solving this. Some
> means of indicating which profile should be active would needed for both
> the web and player UI.
>
> Interestingly, these profiles wouldn't need to be defined just for
> individuals. They could be defined for moods, styles, periods, party
> themes, etc.
>
> There has been discussion of this before, but as the feature is still
> pending, I don't think it's out of bounds to continue it.
>
> Some references:
> http://forums.slimdevices.com/showthread.php?t=15651
> http://forums.slimdevices.com/showthread.php?t=15652
>
> And there are some bugzilla bug IDs for related enhancements mentioned
> in those threads.
>
> Implementation of this feature is highly dependent on having a database
> that performs well for filtered queries and with multiple concurrent
> users. It's likely that some of the delay in getting this out has had
> to do with sorting all of those bits first. Getting SS on mySQL should
> open up the possibilities.
>
>

+1 :-)

my GF and I were thinking about this very same issue. The "genre" tag
simply isn't suitable to include these additional constraints for
specific situations.

We usually have the player on random mix, but some music isn't correctly
categorised (always working on that), but also some music we both like
and some only one of us likes (and stuff in between).

I was thinking that the random mix could get more information about the
current situation (who's listening) and perhaps even what kind of music
is desirable (background type or more intensive type of music)

These additional contraints could be put in a separate table containing
the relation between the user's and the tracks/albums/artist and a table
(perhaps a tag) indicating what kind of "intensity" is associated with a
track/album(/artist?).

It's a lot more complex and needs a good UI to configure this type of
information for hundreds of albums.

We'd be very happy if something is added to slimserver to make this
easier :-)

Cheers

Simon