diff options
Diffstat (limited to 'src/codecs/codec.cpp')
| -rw-r--r-- | src/codecs/codec.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/codecs/codec.cpp b/src/codecs/codec.cpp index 4f9e8892..73bc9032 100644 --- a/src/codecs/codec.cpp +++ b/src/codecs/codec.cpp @@ -7,13 +7,19 @@ #include "codec.hpp" #include <memory> +#include <optional> #include "mad.hpp" +#include "types.hpp" namespace codecs { -auto CreateCodecForType(StreamType type) - -> cpp::result<std::unique_ptr<ICodec>, CreateCodecError> { - return std::make_unique<MadMp3Decoder>(); // TODO. +auto CreateCodecForType(StreamType type) -> std::optional<ICodec*> { + switch (type) { + case StreamType::kMp3: + return new MadMp3Decoder(); + default: + return {}; + } } } // namespace codecs |
