Results 1 to 2 of 2

Thread: A new take on playlists: Querylist

  1. #1

    Default A new take on playlists: Querylist

    I propose a new playlist type to be implemented in Mezzmo. I call it "Querylist" since it allows user to get a list of tracks that matches a dynamically build query. A querylist definition contains an unordered collection of fields in opposite to the active playlist where the collection of fields is hierarchical (ordered).

    Lets see how it works...

    First, we need to define what a querylist is made of. I select fields "Genre", "Artist" and "Album" for the demonstration purposes.

    Now we can start consuming the media content. The media server presents me the following structure when I start browsing the fancy new querylist:

    Code:
       by Album
       by Artist
       by Genre
       All
    As you can see, Mezzmo returns a list of fields (prefixed with "by") for narrowing output. All fields from the querylist definition are available at the top level. The query criteria is empty in the beginning. I come back to the last item (All) later.

    I proceed with "by Genre". Now the things are becoming interesting... Mezzmo will return a dynamically build list of genres to choose from:

    Code:
        Classical
        Musical
        Rock
        ...
        [Unknown]
    Since the query criteria is still empty, this list will be populated with all genres found from all tracks.

    I select "Musical". Bang! We have got the first criteria (Genre = 'Musical') for our dynamic query.

    The "[Unknown]" is special entry that represents a missing value (NULL in database vocabulary).

    Mezzmo responds to the genre selection with this list:

    Code:
       by Album
       by Artist
       All
    This list of narrowing criterias does not have "by Genre" anymore. It was used at earlier stage.

    I pick "by Artist" which leads to the dynamically build (with criteria: Genre = 'Musical') list of artists:

    Code:
        Ann Duquesnay
        Leonard Bernstein
        Rita Abrams
        ...
    This time, there will not be "[Unknown]" in the end because all tracks matching the criteria Genre = 'Musical' had artist defined.

    I pick "Leonard Bernstein". Quess what, the query criteria has become as Genre = 'Musical' AND Artist = 'Leonard Bernstein', now. The media server responds with next selection list:

    Code:
        by Album
        All
    "by Genre" and "by Artist" are gone. Only "by Album" is left. I click on "by Album". The media server uses its dynamic query criteria to build the final selection list:

    Code:
        ...
        West Side Story
        ...
    That's good. I click on West Side Story and got what I wanted (all tracks from Leonard Bernstein's musical 'West Side Story'. The list of tracks was queried with criteria Genre = 'Musical' AND Artist = 'Leonard Bernstein' AND Album = 'West Side Story'.

    OK. That was the process from top to bottom. What if I wish to use only some fields as query criteria? The mystical "All" entry serves as a stop criteria before all fields are consumed. It will return all (or first N matches, where N comes from querylist definition) tracks that meet the criteria collected to the point when "All" is selected. You may find some other word like "End", "Results", "Show" or "Stop" more appropriate.

    A more usable (but also a bit slower to render) alternative is to list all tracks matching the criteria build up to the point in place of "All". Actually, I may prefer this latter alternative if performance does not become as bottleneck (which should not become bottleneck, I think).

    You could also consider querylists as an evolutionary step from active playlists. Querylist will greatly reduce the need to create multitude of active playlist for different browsing orders. Plus it adds an option to prematurely stop to accumulate query criteria.

  2. #2
    Join Date
    Nov 2007
    Location
    Melbourne, Australia
    Posts
    11,616

    Default

    Thanks for the suggestion and detailed explanation. It's a nice idea. We'll discuss it here and add it our development task list for a possible inclusion into Mezzmo.

    Mezzmo Android: Install it on your tablet, smartphone, Android TV or Amazon Fire to browse and stream files from your Mezzmo library to all your devices. Full details at http://www.conceiva.com/products/mez...mo_android.asp
    Mezzmo for Kodi Add-on: Install it into Kodi to stream files from your Mezzmo library directly in Kodi. Full details at http://www.mezzmo.com/wiki/doku.php?...odi_user_guide
    Mezzmo for Roku App: Install it onto your Roku to stream files from your Mezzmo library. Full details at http://www.mezzmo.com/wiki/doku.php?...oku_user_guide
    Wiki: User Guides & Reference Manual at http://www.mezzmo.com/wiki
    Facebook: http://www.facebook.com/Mezzmo.DLNA.Server
    Twitter: https://twitter.com/conceiva_mezzmo
    Web: http://www.mezzmo.com

Similar Threads

  1. Mezzmo processing active playlists without actually having active playlists
    By HotteHotte in forum Mezzmo Questions and Support
    Replies: 2
    Last Post: 11-19-2013, 02:54 AM
  2. Playlists
    By shutter in forum Mezzmo Questions and Support
    Replies: 7
    Last Post: 05-17-2012, 09:06 AM
  3. Playlists/Auto Playlists with Rights/Permissions needed
    By Pattasatto in forum Mezzmo Wish List and Feedback
    Replies: 6
    Last Post: 04-12-2012, 08:33 AM
  4. Anyway to order playlists?
    By hartlenb in forum Mezzmo Questions and Support
    Replies: 1
    Last Post: 03-28-2011, 09:21 AM
  5. question about playlists
    By phibertron in forum Mezzmo Questions and Support
    Replies: 1
    Last Post: 03-17-2011, 08:22 AM

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •