diff options
Diffstat (limited to 'src/audio/include')
| -rw-r--r-- | src/audio/include/audio_decoder.hpp | 3 | ||||
| -rw-r--r-- | src/audio/include/audio_element.hpp | 3 | ||||
| -rw-r--r-- | src/audio/include/fatfs_audio_input.hpp | 2 |
3 files changed, 8 insertions, 0 deletions
diff --git a/src/audio/include/audio_decoder.hpp b/src/audio/include/audio_decoder.hpp index 5927e150..3cda0305 100644 --- a/src/audio/include/audio_decoder.hpp +++ b/src/audio/include/audio_decoder.hpp @@ -30,6 +30,8 @@ class AudioDecoder : public IAudioElement { AudioDecoder(); ~AudioDecoder(); + auto NeedsToProcess() const -> bool override; + auto Process(const std::vector<InputStream>& inputs, OutputStream* output) -> void override; @@ -41,6 +43,7 @@ class AudioDecoder : public IAudioElement { std::optional<StreamInfo::Format> current_input_format_; std::optional<StreamInfo::Format> current_output_format_; bool has_samples_to_send_; + bool has_input_remaining_; auto ProcessStreamInfo(const StreamInfo& info) -> bool; }; diff --git a/src/audio/include/audio_element.hpp b/src/audio/include/audio_element.hpp index 133a6ae7..7e3d9d7d 100644 --- a/src/audio/include/audio_element.hpp +++ b/src/audio/include/audio_element.hpp @@ -10,6 +10,7 @@ #include <cstdint> #include <deque> #include <memory> +#include <vector> #include "freertos/FreeRTOS.h" @@ -46,6 +47,8 @@ class IAudioElement { IAudioElement() {} virtual ~IAudioElement() {} + virtual auto NeedsToProcess() const -> bool = 0; + virtual auto Process(const std::vector<InputStream>& inputs, OutputStream* output) -> void = 0; }; diff --git a/src/audio/include/fatfs_audio_input.hpp b/src/audio/include/fatfs_audio_input.hpp index 98ad4d2b..bfc0064e 100644 --- a/src/audio/include/fatfs_audio_input.hpp +++ b/src/audio/include/fatfs_audio_input.hpp @@ -33,6 +33,8 @@ class FatfsAudioInput : public IAudioElement { auto OpenFile(const std::string& path) -> bool; + auto NeedsToProcess() const -> bool override; + auto Process(const std::vector<InputStream>& inputs, OutputStream* output) -> void override; |
