#pragma once #include #include namespace tc::audio { class InputReframer { public: InputReframer(size_t channels, size_t frame_size); virtual ~InputReframer(); void process(const void* /* source */, size_t /* samples */); [[nodiscard]] inline size_t channels() const { return this->_channels; } [[nodiscard]] inline size_t frame_size() const { return this->_frame_size; } std::function on_frame; private: void* buffer; size_t _buffer_index; size_t _channels; size_t _frame_size; }; }