From 61c91b3cdb2c9dd655f3adf0f461f5cefb3b2e9b Mon Sep 17 00:00:00 2001 From: jacqueline Date: Fri, 10 Feb 2023 15:32:21 +1100 Subject: Mostly working pipeline, including proper EOF signalling --- src/audio/audio_playback.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'src/audio/audio_playback.cpp') diff --git a/src/audio/audio_playback.cpp b/src/audio/audio_playback.cpp index 4df598c5..504a2a4e 100644 --- a/src/audio/audio_playback.cpp +++ b/src/audio/audio_playback.cpp @@ -38,9 +38,9 @@ auto AudioPlayback::create(drivers::GpioExpander* expander, playback->ConnectElements(codec.get(), sink.get()); // Launch! - playback->element_handles_.push_back(StartAudioTask("src", source)); - playback->element_handles_.push_back(StartAudioTask("dec", codec)); - playback->element_handles_.push_back(StartAudioTask("sink", sink)); + playback->element_handles_.push_back(StartAudioTask("src", {}, source)); + playback->element_handles_.push_back(StartAudioTask("dec", {}, codec)); + playback->element_handles_.push_back(StartAudioTask("sink", 0, sink)); playback->input_handle_ = source->InputEventQueue(); @@ -60,6 +60,8 @@ auto AudioPlayback::Play(const std::string& filename) -> void { info.path = filename; auto event = StreamEvent::CreateStreamInfo(input_handle_, info); xQueueSend(input_handle_, &event, portMAX_DELAY); + event = StreamEvent::CreateEndOfStream(input_handle_); + xQueueSend(input_handle_, &event, portMAX_DELAY); } auto AudioPlayback::ConnectElements(IAudioElement* src, IAudioElement* sink) -- cgit v1.2.3