Minor cleanup on audio codecs

This commit is contained in:
emeric
2025-12-07 22:40:45 +01:00
parent 66e4f9ef92
commit 6d27f18f19
38 changed files with 521 additions and 553 deletions
@@ -19,11 +19,13 @@
#pragma once
#include <functional>
#include "core/LiteralString.hpp"
namespace lms::core::media
{
enum class CodecType
enum class Codec
{
AAC,
AC3,
@@ -48,7 +50,13 @@ namespace lms::core::media
WMA9Lossless,
};
core::LiteralString codecTypeToString(CodecType type);
bool isCodecLossless(CodecType type);
struct CodecDesc
{
Codec type;
core::LiteralString name;
core::LiteralString longName;
bool isLossless;
};
void visitCodecs(const std::function<void(const CodecDesc&)>& visitor);
const CodecDesc& getCodecDesc(Codec type);
} // namespace lms::core::media
@@ -23,7 +23,7 @@
namespace lms::core::media
{
enum class ContainerType
enum class Container
{
AIFF,
APE, // Monkey's Audio
@@ -40,5 +40,5 @@ namespace lms::core::media
WavPack,
};
core::LiteralString containerTypeToString(ContainerType type);
core::LiteralString containerToString(Container type);
} // namespace lms::core::media
@@ -20,10 +20,10 @@
#pragma once
#include "core/LiteralString.hpp"
#include "core/media/CodecType.hpp"
#include "core/media/ContainerType.hpp"
#include "core/media/Codec.hpp"
#include "core/media/Container.hpp"
namespace lms::core::media
{
core::LiteralString getMimeType(ContainerType container, CodecType codec);
core::LiteralString getMimeType(Container container, Codec codec);
}