diff options
Diffstat (limited to 'src/audio/include/audio_task.hpp')
| -rw-r--r-- | src/audio/include/audio_task.hpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/audio/include/audio_task.hpp b/src/audio/include/audio_task.hpp index f6e9789b..b27aa039 100644 --- a/src/audio/include/audio_task.hpp +++ b/src/audio/include/audio_task.hpp @@ -14,6 +14,7 @@ #include "audio_source.hpp" #include "codec.hpp" #include "pipeline.hpp" +#include "sink_mixer.hpp" #include "stream_info.hpp" namespace audio { @@ -63,18 +64,20 @@ class AudioTask { auto ForwardPcmStream(StreamInfo::Pcm&, cpp::span<const std::byte>) -> bool; auto ConfigureSink(const StreamInfo::Pcm&, const Duration&) -> bool; + auto SendToSink(InputStream&) -> void; IAudioSource* source_; IAudioSink* sink_; std::unique_ptr<codecs::ICodec> codec_; + std::unique_ptr<SinkMixer> mixer_; std::unique_ptr<Timer> timer_; bool has_begun_decoding_; std::optional<StreamInfo::Format> current_input_format_; std::optional<StreamInfo::Pcm> current_output_format_; + std::optional<StreamInfo::Pcm> current_sink_format_; - std::byte* sample_buffer_; - std::size_t sample_buffer_len_; + std::unique_ptr<RawStream> codec_buffer_; }; } // namespace audio |
