jellyfin-smart-playlist/examples.md

1.5 KiB

Examples

  • Favourite Pop: A playlist containing all favourite items of the genre pop.

    Id: Favourite Pop
    Name: Favourite Pop
    Program: |
      (and (is-type "Audio") (is-favorite) (is-genre "pop" (genre-list)))
    
  • Electro Swing: A playlist containing all items which have a genre that contains "electro" and a genre that contains "swing". It will only include albums and single tracks.

    Id: Electro Swing
    Name: Electro Swing
    Program: |
      (let
        (g (genre-list))
        (and
          (or
            (is-type "Audio")
            (is-type "MusicAlbum"))
          (is-genre "electro" g)
          (is-genre "swing" g)))
    
  • All of Seeed: A playlist containing all items by artist Seeed, useless, since you also can just navigate to the artist to play all their songs, but a good example.

    Id: Seeed
    Name: Seeed
    Program: |
      (let
        (parent
          (invoke-generic *item* "FindParent" nil (list "MediaBrowser.Controller.Entities.Audio.MusicArtist, MediaBrowser.Controller")))
        (cond
          ((null parent) nil)
          (t (string= (car (getitems parent "Name")) "Haller"))))
    

    or simplified with definitions contained in the preamble:

    Id: Seeed
    Name: Seeed
    Program: |
      (let
        (parent
          (find-parent "MediaBrowser.Controller.Entities.Audio.MusicArtist, MediaBrowser.Controller"))
        (cond
          ((null parent) nil)
          (t (string= (car (getitems parent "Name")) "Seeed"))))