diff options
Diffstat (limited to 'src/audio/include/audio_decoder.hpp')
| -rw-r--r-- | src/audio/include/audio_decoder.hpp | 51 |
1 files changed, 0 insertions, 51 deletions
diff --git a/src/audio/include/audio_decoder.hpp b/src/audio/include/audio_decoder.hpp deleted file mode 100644 index e8da415e..00000000 --- a/src/audio/include/audio_decoder.hpp +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright 2023 jacqueline <me@jacqueline.id.au> - * - * SPDX-License-Identifier: GPL-3.0-only - */ - -#pragma once - -#include <cstddef> -#include <cstdint> -#include <memory> -#include <vector> - -#include "chunk.hpp" -#include "ff.h" -#include "span.hpp" - -#include "audio_element.hpp" -#include "codec.hpp" -#include "stream_info.hpp" - -namespace audio { - -/* - * An audio element that accepts various kinds of encoded audio streams as - * input, and converts them to uncompressed PCM output. - */ -class AudioDecoder { - public: - AudioDecoder(); - ~AudioDecoder(); - - auto Process(const InputStream& input, OutputStream* output) -> void; - - AudioDecoder(const AudioDecoder&) = delete; - AudioDecoder& operator=(const AudioDecoder&) = delete; - - private: - std::unique_ptr<codecs::ICodec> current_codec_; - std::optional<StreamInfo::Encoded> current_input_format_; - std::optional<StreamInfo::Format> current_output_format_; - std::optional<std::size_t> duration_seconds_from_decoder_; - std::optional<std::size_t> seek_to_sample_; - bool has_prepared_output_; - bool has_samples_to_send_; - bool has_input_remaining_; - - auto ProcessStreamInfo(const StreamInfo& info) -> bool; -}; - -} // namespace audio |
