- unshuffled endless playlist fix.
This commit is contained in:
Blaž Kristan 2021-06-07 14:13:21 +02:00
parent 9ac7acf8b3
commit cbf3ae4db4
2 changed files with 7 additions and 4 deletions

View File

@ -10,6 +10,7 @@ typedef struct PlaylistEntry {
uint16_t tr; uint16_t tr;
} ple; } ple;
bool playlistEndless = false;
int8_t playlistRepeat = 1; int8_t playlistRepeat = 1;
byte playlistEndPreset = 0; byte playlistEndPreset = 0;
byte *playlistEntries = nullptr; byte *playlistEntries = nullptr;
@ -92,6 +93,9 @@ void loadPlaylist(JsonObject playlistObj) {
playlistRepeat = playlistObj[F("repeat")] | 0; playlistRepeat = playlistObj[F("repeat")] | 0;
playlistEndPreset = playlistObj[F("end")] | 0; playlistEndPreset = playlistObj[F("end")] | 0;
playlistEndless = playlistRepeat < 1;
if (playlistEndless && playlistRepeat==0) playlistRepeat = 1; // it will never decrement
currentPlaylist = 0; //TODO here we need the preset ID where the playlist is saved currentPlaylist = 0; //TODO here we need the preset ID where the playlist is saved
} }
@ -112,9 +116,8 @@ void handlePlaylist() {
} }
// playlist roll-over // playlist roll-over
if (!playlistIndex) { if (!playlistIndex) {
if (playlistRepeat > 0) {// playlistRepeat < 0 => endless loop with shuffling presets if (!playlistEndless) playlistRepeat--; // decrease repeat count on each index reset if not an endless playlist
playlistRepeat--; // decrease repeat count on each index reset if (playlistRepeat < 0) {// playlistRepeat < 0 => endless loop with shuffling presets
} else {
shufflePlaylist(); // shuffle playlist and start over shufflePlaylist(); // shuffle playlist and start over
} }
} }

View File

@ -8,7 +8,7 @@
*/ */
// version code in format yymmddb (b = daily build) // version code in format yymmddb (b = daily build)
#define VERSION 2106061 #define VERSION 2106071
//uncomment this if you have a "my_config.h" file you'd like to use //uncomment this if you have a "my_config.h" file you'd like to use
//#define WLED_USE_MY_CONFIG //#define WLED_USE_MY_CONFIG