From c4cb5af78c4c8e4902833f0c62148ef73ac5f33e Mon Sep 17 00:00:00 2001 From: Will Tatam Date: Mon, 18 Mar 2024 14:57:41 +0000 Subject: [PATCH] Disable auto-playlist if manual selection is made --- usermods/usermod_v2_auto_playlist/usermod_v2_auto_playlist.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/usermods/usermod_v2_auto_playlist/usermod_v2_auto_playlist.h b/usermods/usermod_v2_auto_playlist/usermod_v2_auto_playlist.h index 7a90d706..419e241c 100644 --- a/usermods/usermod_v2_auto_playlist/usermod_v2_auto_playlist.h +++ b/usermods/usermod_v2_auto_playlist/usermod_v2_auto_playlist.h @@ -12,6 +12,7 @@ class AutoPlaylistUsermod : public Usermod { byte musicPlaylist = 2; int timeout = 60; bool autoChange = false; + byte lastAutoPreset = 0; int avg_long_energy = 10000; @@ -136,6 +137,8 @@ class AutoPlaylistUsermod : public Usermod { if(bri == 0) return; + if(lastAutoPreset > 0 && lastAutoPreset != currentPreset) enabled = false; + um_data_t *um_data; if (!usermods.getUMData(&um_data, USERMOD_ID_AUDIOREACTIVE)) { // No Audio Reactive @@ -156,6 +159,7 @@ class AutoPlaylistUsermod : public Usermod { getPresetName(ambientPlaylist, name); USER_PRINTF("AutoPlaylist: Silence - apply %s\n", name.c_str()); applyPreset(ambientPlaylist, CALL_MODE_NOTIFICATION); + lastAutoPreset = ambientPlaylist; } } else { @@ -165,6 +169,7 @@ class AutoPlaylistUsermod : public Usermod { getPresetName(musicPlaylist, name); USER_PRINTF("AutoPlaylist: End of silence - apply %s\n", name.c_str()); applyPreset(musicPlaylist, CALL_MODE_NOTIFICATION); + lastAutoPreset = ambientPlaylist; } if(autoChange) change(um_data); }