Skip to content

Dynamic Playlist Creator - a plugin for Lyrion Music Server that helps you create custom smart playlists (dynamic playlists) for the Dynamic Playlists plugin using templates.

License

Notifications You must be signed in to change notification settings

AF-1/lms-dynamicplaylistcreator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dynamic Playlist Creator

Dynamic Playlist Creator1 (DPLC) helps you create custom dynamic playlists for the Dynamic Playlists plugin using templates.
The target group for this plugin is users who want to quickly and easily create custom dynamic playlists using only templates and do not want to work with raw SQLite statements. Accordingly, DPLC does not include the option to edit SQLite statements manually in the plugin (see FAQ).

💡 The templates allow you to create dynamic playlists for many purposes, but of course they do not cover all conceivable use cases.
Don't forget: the Dynamic Playlists plugin also allows you to use (raw) SQLite statements that you can customise exactly to your needs (see DPL FAQ).



⬅️ Back to the list of all plugins



Screenshots2




Requirements

Installation

Dynamic Playlist Creator is available from the LMS plugin library: LMS > Settings > Manage Plugins.

If you want to test a new patch that hasn't made it into a release version yet, you'll have to install the plugin manually.



Reporting a new issue

If you want to report a new issue, please read the FAQ first and then fill out this issue report template.

If you use this plugin and like it, perhaps you could give it a ⭐ so that other users can discover it (in their News Feed). Thank you.



FAQ

»How do I create custom dynamic playlists?«

  • Go to LMS home menu > Extras > Dynamic Playlist Creator > Create new dynamic playlist.

  • Depending on the focus of your new dynamic playlist, select a template. The Random Tracks - Advanced template with its many options is a good starting point.

  • Enter a name, set the parameters you want to use and then save it. That's it.

It takes a couple of seconds for the Dynamic Playlists plugin to start updating the list of available dynamic playlists and your new dynamic playlist to show up there. If you don't see your dynamic playlists listed, you can force a refresh of available dynamic playlists by (re)entering the Dynamic Playlists menu from the LMS home menu.


»How can I edit custom dynamic playlists I've created with this plugin?«

Dynamic Playlist Creator displays a list of all dynamic playlists that you have created with this plugin.
If you want to change the name of your dynamic playlist or some parameters, click on the Edit button next to the playlist's name, make your changes and save it. After a couple of seconds, the Dynamic Playlist plugin will update its list of available dynamic playlists and pick up the changes you just made.


»Can I edit the SQLite statement of my dynamic playlists manually in DPLC?«
    »What does the export button do?«

The target group for this plugin is users who want to quickly and easily create custom dynamic playlists using only templates and do not want to work with raw SQLite statements. Accordingly, DPLC does not include the option to edit SQLite statements manually in a tiny plugin text area.

Users familiar with SQLite can use the export button to permanently move a dynamic playlist currently managed by DPLC to the Dynamic Playlists plugin, i.e. its folder for custom dynamic playlists called DPL-custom-lists. There you can edit it like any other custom dynamic playlist with your favorite code editor.
Moved dynamic playlists are removed from and no longer managed by DPLC.

Please note: the export button is disabled by default and can be enabled in DPLC's settings.


»When I edit my custom dynamic playlist, DPLC displays a saved version number and a new version number. What does that mean?«

When I change/add template parameters or fix template bugs, the template version number increases.
If you created your custom dynamic playlist using an older template version than the current one, this discrepancy is displayed next to the template name on the edit page.

Updating your custom dynamic playlist (recommended) is as simple as saving it again. Even if you don't change any parameter (value), this will make DPLC update the SQLite statement of your custom dynamic playlist.


»What are the files in the DynamicPlaylistCreator folder for? Can I edit them?«

When you create or edit and then save a custom dynamic playlist, DPLC will create 2 files in the DynamicPlaylistCreator folder (default location in the LMS preferences folder, can be changed in the plugin settings):

  • the file with the customvalues.xml extension contains the (template) values you selected for this dynamic playlist. It allows you to edit or update your custom dynamic playlist in DPLC at a later time.

  • In addition, DPLC will always save your custom dynamic playlist as an SQLite statement (file extension: sql) because Dynamic Playlists searches the DPLC custom folder for them.

⚠️ Do not move or edit any of these files manually! DPLC will overwrite the changes. Or worse, your custom dynamic playlist will no longer work. And please do not rename the DynamicPlaylistCreator folder.


»I can't set a file name for new dynamic playlists in DPLC anymore.«

DPLC handles all file names internally. They are derived from the dynamic playlist name and special characters are removed or replaced.
When you try to save a new dynamic playlist and DPLC finds a file with an identical file name, it will append a number to the end of the new file name so there will be no playlist ID conflicts. Once the dynamic playlist is saved, its file name (on which the playlist ID is based) won't change anymore, even if you change/edit the playlist name.


»Why is the Play button not displayed for all dynamic playlists?«
    »The Play button is not working for new dynamic playlists.«

The play button is disabled by default and has to be enabled in DPLC's settings first.
You can only start dynamic playlists directly in DPLC that do not ask for user input when started. DPLC does not contain code to handle user-input parameters. To simplify the maintenance and updating of the plugin, I decided to create DPLC as a sort of dynamic playlist construction kit without duplicating any code from the Dynamic Playlists plugin.

After you have created a new dynamic playlist that does not ask for user input, please wait a few seconds before you try to start it with the Play button. Dynamic Playlists needs a moment to update the list of available dynamic playlists.

Starting dynamic playlists without user-input parameters in DPLC is just a quick way to test a dynamic playlist. The Dynamic Playlists plugin is still where you start your mixes, not DPLC.


»Which plugins does DPLC work with?«

It works with Dynamic Playlists, Alternative Play Count, Custom Skip and Custom Tag Importer.


»In some DPLC templates there's no option to set a track limit and no do not repeat setting.«

Dynamic playlists that use the LMS cache cannot have a track limit because Dynamic Playlists will load all track IDs matching the active dynamic playlist's search parameters into the cache using a single initial database query. The cached track ID list should not have duplicates, hence no do not repeat option. DPL will add small batches of tracks from this cached list to the players's current playlist. The number of new unplayed tracks to be added per batch can be set in the DPL settings. It's a global setting for all dynamic playlists (except album dynamic playlists which should add complete albums).


»Does DPLC handle online tracks?«

DPLC creates dynamic playlists for the Dynamic Playlists plugin which will process online tracks that have been added to your LMS library as part of an album. LMS does not import single online tracks or tracks of online playlists as library tracks and therefore these won't be processed by Dynamic Playlists.


»How do I use custom tags from the Custom Tag Importer plugin?«

You can use up to 8 custom tags with templates that support custom tags from the Custom Tag Importer plugin. If you use different logical operators (and/or) to link them, please make sure that you group the custom tags linked by AND and those linked by OR.

Example: if you have 5 custom tags (A, B, C, D, E) and you definitely want 2 of them (A, B) and one of the remaining 3 (C, D, E), put them in this order: A and B and ( C or D or E ). The 2 ANDs first, then the ORs. Both groups are linked by AND.


»I can't save new dynamic playlists. I get this error message: “Could not create the DynamicPlaylistCreator folder“.«

The DynamicPlaylistCreator folder is where DPLC stores all files related to your custom dynamic playlists and where the Dynamic Playlists plugin expects to find them. The folder name is hard-coded and must not be changed.
On every LMS (re)start, DPLC checks if there's a folder called DynamicPlaylistCreator in the parent folder. The default parent folder is the LMS preferences folder but you can change that in DPLC's preferences. If it doesn't find the folder DynamicPlaylistCreator inside the specified parent folder, it will try to create it.

The most likely cause for the error message above and matching error messages in the server log is that DPLC can't create the folder because LMS doesn't have read/write permissions for the parent folder (or the DynamicPlaylistCreator folder).

So please make sure that LMS has read/write permissions (755) for the parent folder - and the DynamicPlaylistCreator folder (if it exists but cannot be accessed).


»Can I import my custom dynamic playlists from the SQLPlayList plugin?«

You can't migrate dynamic playlist definitions from the SQLPlayList plugin to Dynamic Playlist Creator. They are based on templates which are different from the ones that DPLC uses.


»Can you translate DPLC into my language?«

This plugin will not be localized because the parameter and value names in the template are hard-coded. And a halfway localized version is worse than a non-localized one.



Footnotes

  1. inspired by and based on Erland's SQLPlayList

  2. The screenshots might not correspond to the UI of the latest release in every detail.

About

Dynamic Playlist Creator - a plugin for Lyrion Music Server that helps you create custom smart playlists (dynamic playlists) for the Dynamic Playlists plugin using templates.

Topics

Resources

License

Stars

Watchers

Forks