diff options
| author | jacqueline <me@jacqueline.id.au> | 2023-02-10 15:32:21 +1100 |
|---|---|---|
| committer | jacqueline <me@jacqueline.id.au> | 2023-02-10 15:32:21 +1100 |
| commit | 61c91b3cdb2c9dd655f3adf0f461f5cefb3b2e9b (patch) | |
| tree | 8d0bb288781f86455f02219d0b7ac8cee493eeb3 /src/audio/fatfs_audio_input.cpp | |
| parent | cabfd4b75ecc733bdf36997606a686c4d2bc277d (diff) | |
| download | tangara-fw-61c91b3cdb2c9dd655f3adf0f461f5cefb3b2e9b.tar.gz | |
Mostly working pipeline, including proper EOF signalling
Diffstat (limited to 'src/audio/fatfs_audio_input.cpp')
| -rw-r--r-- | src/audio/fatfs_audio_input.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/audio/fatfs_audio_input.cpp b/src/audio/fatfs_audio_input.cpp index 08f39347..8990bf4f 100644 --- a/src/audio/fatfs_audio_input.cpp +++ b/src/audio/fatfs_audio_input.cpp @@ -69,6 +69,16 @@ auto FatfsAudioInput::ProcessChunk(const cpp::span<std::byte>& chunk) return cpp::fail(UNSUPPORTED_STREAM); } +auto FatfsAudioInput::ProcessEndOfStream() -> void { + if (is_file_open_) { + f_close(¤t_file_); + is_file_open_ = false; + SendOrBufferEvent( + std::unique_ptr<StreamEvent>( + StreamEvent::CreateEndOfStream(input_events_))); + } +} + auto FatfsAudioInput::Process() -> cpp::result<void, AudioProcessingError> { if (is_file_open_) { auto dest_event = std::unique_ptr<StreamEvent>( |
