summaryrefslogtreecommitdiff
path: root/src/audio/audio_fsm.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/audio/audio_fsm.cpp')
-rw-r--r--src/audio/audio_fsm.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/audio/audio_fsm.cpp b/src/audio/audio_fsm.cpp
index fc263351..79080c9a 100644
--- a/src/audio/audio_fsm.cpp
+++ b/src/audio/audio_fsm.cpp
@@ -93,6 +93,10 @@ void Uninitialised::react(const system_fsm::BootComplete&) {
transit<Standby>();
}
+void Standby::react(const PlayFile& ev) {
+ sFileSource->SetPath(ev.filename);
+}
+
void Standby::react(const internal::InputFileOpened& ev) {
transit<Playback>();
}
@@ -161,6 +165,9 @@ void Playback::react(const internal::InputFileClosed& ev) {}
void Playback::react(const internal::InputFileFinished& ev) {
ESP_LOGI(kTag, "finished playing file");
sTrackQueue->Next();
+ if (!sTrackQueue->GetCurrent()) {
+ transit<Standby>();
+ }
}
void Playback::react(const internal::AudioPipelineIdle& ev) {