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/chunk.cpp | |
| parent | cabfd4b75ecc733bdf36997606a686c4d2bc277d (diff) | |
| download | tangara-fw-61c91b3cdb2c9dd655f3adf0f461f5cefb3b2e9b.tar.gz | |
Mostly working pipeline, including proper EOF signalling
Diffstat (limited to 'src/audio/chunk.cpp')
| -rw-r--r-- | src/audio/chunk.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/audio/chunk.cpp b/src/audio/chunk.cpp index 61c0dc2b..01760a84 100644 --- a/src/audio/chunk.cpp +++ b/src/audio/chunk.cpp @@ -41,8 +41,11 @@ auto ChunkReader::HandleNewData(cpp::span<std::byte> data) return last_data_in_working_buffer_; } -auto ChunkReader::HandleLeftovers(std::size_t bytes_used) -> void { - leftover_bytes_ = last_data_in_working_buffer_.size() - bytes_used; +auto ChunkReader::HandleBytesUsed(std::size_t bytes_used) -> void { + HandleBytesLeftOver(last_data_in_working_buffer_.size() - bytes_used); +} +auto ChunkReader::HandleBytesLeftOver(std::size_t bytes_left) -> void { + leftover_bytes_ = bytes_left; // Ensure that we don't have more than a chunk of leftever bytes. This is // bad, because we probably won't have enough data to store the next chunk. @@ -55,4 +58,8 @@ auto ChunkReader::HandleLeftovers(std::size_t bytes_used) -> void { } } +auto ChunkReader::GetLeftovers() -> cpp::span<std::byte> { + return working_buffer_.first(leftover_bytes_); +} + } // namespace audio |
