Dynamic Mix Plugin
Purpose
This plugin only works as an extension to Erland’s Dynamic Playlist plugin.
It allows you to play a constantly evolving, potentially endless, mix of songs. It uses MusicIP to select the next song for the mix, based on the previously selected song.
It provides various ways for selecting the initial song (the seed for the mix), after which additional songs will be added to the current playlist based on the previously chosen song.
The dynamic mix settings can be configured per-player, and are used to choose the properties for the MusicIP Mix, such as Style, Variety and Filter.
The plugin keeps track of a number of tracks selected for previous mixes, and ensures that duplicate tracks are not played within that collection.
The plugin attempts to be resilient to problems selecting or playing tracks from MusicIP. If any problems occur getting the next song to play, it will instead fall back to play a random song from the library. This makes it more reliable to be used as the source playlist for an alarm clock.
The plugin can be installed as an extension within Squeezebox Server by accessing Settings > Plugins. Add my plugin repository url to the list of third-party plugin sources, and then my plugins should be listed for you to choose to install from.
Alternatively, it can be manually installed by doing the following:
After restarting the Squeezebox server with the plugin installed, the first step is to choose the mix settings for a squeezebox player.
Go to the Web UI > Settings > Player. Choose the desired Player, and choose Dynamic Mix player settings page. From here, choose Style, Variety, Filter, etc, and apply the settings.
You are now ready to start a dynamic mix. Go to Erlands Dynamic Playlists menu (eg. Home > My Music > Dynamic Playlists). Within the menus, you will find the following new entries:
Dynamic Mix |
Uses the currently playing track on the currently selected player as the starting seed. Chooses random songs based on this seed. This can also be chosen as the source of an alarm clock. |
Dynamic Mix Album |
Will prompt you to choose an album as the starting seed, or if enabled as a Dynamic Playlist Favourite, can be started as a mixer from the context of a chosen album. |
Dynamic Mix Artist |
Will prompt you to choose an artist as the starting seed, or if enabled as a Dynamic Playlist Favourite, can be started as a mixer from the context of a chosen artist. |
Dynamic Mix Genre |
Will prompt you to choose a genre as the starting seed, or if enabled as a Dynamic Playlist Favourite, can be started as a mixer from the context of a chosen genre. |
Dynamic Mix Mood |
Will prompt you to choose a MusciIP mood as the starting seed. MusicIP Moods are not context-sensitive. |
Dynamic Mix Track |
If enabled as a Dynamic Playlist Favourite, can be started as a mixer from the context of a chosen song. Note: It is not recommended to navigate into this dynamic playlist menu to choose from a list, as this could be a very long list of tracks (may not even work). |
I suggest setting these Dynamic Mix playlists as favourites within Dynamic Playlist settings. This then allows these to be chosen with Dynamic Playlists > Favourites, but more importantly they can then be used as mixes for the context that they are appropriate for (directly from an item when browsing your music collection, from the Current Playlist screen, etc).
It is also possible to set Dynamic Mix as a Squeezebox Server Favourite, such that it can be started from Home > Favourites > Dynamic Mix.
In previous versions of SBS (
There are some known problems:
If anyone has any enhancement requests, please post your thoughts to the Plugins SqueezeCenter mailing list/forum, or contact me directly (see below).
Credit
This plugin code was based on SugarCube by Charles Parker (http://www.spicefly.com), which is another plugin that provides similar functionality, but with some more advanced features. SugarCube concentrates on being an independent plugin that doesn’t require any other plugins to function.
You can contact me at: phil
AT hergest DOT demon DOT co DOT
Compatibility fix for LMS, to find a random track to play
if no mix tracks are returned from MusicIP. |
|
Support all player preferences in Jive players. |
|
Make plugin compatible with Slimserver version 7.5.6. Make resilient to play random song when MusicIP is not responding. |
|
Version 1.0 |
Initial version – pre-Slimserver version 6.5. |