Alchemy 0.0.9999
Alchemy is a C++ library for multimedia file management.
Loading...
Searching...
No Matches
registry.hxx
1#pragma once
2
3#include <Alchemy/media/codec.hxx>
4#include <StormByte/expected.hxx>
5#include <StormByte/multimedia/exception.hxx>
6
7#include <unordered_map>
8#include <vector>
9
14namespace Alchemy::Media {
19 struct ALCHEMY_PUBLIC Registry {
25 static StormByte::Expected<Codec::PointerType, StormByte::Multimedia::CodecNotFound> CodecInfo(const std::string& codecName);
26
27 private:
32 static const std::vector<Codec::PointerType>& CodecRegistry();
33
38 static const std::unordered_map<std::string, Codec::PointerType>& NameMapRegistry();
39
45 static std::vector<std::shared_ptr<const std::string>> Split(const std::string& str);
46 };
47}
Centralized registry to manage codec-related metadata.
Definition registry.hxx:19
static StormByte::Expected< Codec::PointerType, StormByte::Multimedia::CodecNotFound > CodecInfo(const std::string &codecName)
Retrieves detailed information about a codec by name.