[vlc-devel] playlist: flat / tree separation

Jean-Baptiste Kempf jb at videolan.org
Sat Aug 22 19:37:32 CEST 2009

On Sat, Aug 22, 2009 at 06:42:09PM +0300, Rémi Denis-Courmont wrote :
> > Let's try to sum up a few things from a user PoV:
> >  - Playlists are playlists, and people want to sort and rearrange
> >    them... Which is difficult to do in a tree-view.
> It's not difficult. It's impossible in a understandable way. How do you order 
> a tree alphabetically or randomly? It simply cannot work. Indeed, if the tree 
> were randomized without first being flattened, the playback would not be truly 
> random :(
So, we agree on that.

> >    1) We need flat views
> We need a flat playlist. Whether it's a view of something, is an 
> implementation detail, and by the way, I'd argue *against* such an 
> implementation.
When I say "view", I mean "visible to the user".
But, yes, we agree on that.

> >  - Some service libraries (MTP, Shoutcast, Upnp..., ) are hierarchy
> >    centrics and are therefore trees.
> >    2) we need tree views and therefore tree models
> Again no. We need hierarchical storage. It does not need to be a view. We 
> could have separate:
>  - flat playlist, and
>  - hierarchical media library.
> No views are needed.

What? When I say 'view', I mean to the user, so, we are not speaking
about the same thing.

> A database is good for a media library, especially for a persistent one.
> It is not very good for a playlist - you don't want to run an SQL query to 
> figure out what the next item is. This is too slow and inefficient.
I doubt anyone objects that.

> > Do we need trees for current playlist? possibly not, but if you
> > implement it for Services, how is it different now?
> It wouldn't hurt to move SD away from the playlist. The current situation is 
> legacy inherited from what used to be the "SAP extra interface".
no objection.

> > If we can figure out a correct way for the core to sort in flat mode,
> > even if the rest in tree, that would be nice.
> If the ML(+database) and the playlist are completely separate entities, non-
> flat sorting is a non-issue.
Agreed. :D

> > PS: before starting the work on breaking playlist (again!), please merge
> > ECP-jetru's work on the SQL Media Library
> The playlist and the media library are different things. If the patch touch 
> the playlist core "much", I suspect there is something wrong with the patch 
> (not that I know anything about it).
Well, from the interface point of view and the final user-view, it is
very intricate. For the core, you are right.

Best Regards,

Jean-Baptiste Kempf

More information about the vlc-devel mailing list