diff options
| author | ayumi <ayumi@noreply.codeberg.org> | 2025-07-22 09:27:29 +0200 |
|---|---|---|
| committer | ayumi <ayumi@noreply.codeberg.org> | 2025-08-01 20:03:21 +0200 |
| commit | 4887378ce74c27f837fe1939ad5917b221736fac (patch) | |
| tree | 8a3b07dc014050c82443ef4b0e83e8de2ebbf24b /src/tangara | |
| parent | b68ac702817316e75270355e19231e04f484cb74 (diff) | |
| download | tangara-fw-4887378ce74c27f837fe1939ad5917b221736fac.tar.gz | |
Preliminary ALAC support
Diffstat (limited to 'src/tangara')
| -rw-r--r-- | src/tangara/audio/fatfs_stream_factory.cpp | 2 | ||||
| -rw-r--r-- | src/tangara/database/tag_parser.cpp | 3 | ||||
| -rw-r--r-- | src/tangara/database/tag_parser.hpp | 6 | ||||
| -rw-r--r-- | src/tangara/database/track.hpp | 1 |
4 files changed, 9 insertions, 3 deletions
diff --git a/src/tangara/audio/fatfs_stream_factory.cpp b/src/tangara/audio/fatfs_stream_factory.cpp index 9089735c..2385eb69 100644 --- a/src/tangara/audio/fatfs_stream_factory.cpp +++ b/src/tangara/audio/fatfs_stream_factory.cpp @@ -90,6 +90,8 @@ auto FatfsStreamFactory::ContainerToStreamType(database::Container enc) return codecs::StreamType::kOpus; case database::Container::kWavPack: return codecs::StreamType::kWavPack; + case database::Container::kAlac: + return codecs::StreamType::kAlac; case database::Container::kUnsupported: default: return {}; diff --git a/src/tangara/database/tag_parser.cpp b/src/tangara/database/tag_parser.cpp index 0be6cb35..1b7b4b82 100644 --- a/src/tangara/database/tag_parser.cpp +++ b/src/tangara/database/tag_parser.cpp @@ -416,6 +416,9 @@ auto GenericTagParser::ReadAndParseTags(std::string_view p) case Fwavpack: out->encoding(Container::kWavPack); break; + case Falac: + out->encoding(Container::kAlac); + break; default: out->encoding(Container::kUnsupported); } diff --git a/src/tangara/database/tag_parser.hpp b/src/tangara/database/tag_parser.hpp index eb0f4c7c..fc86c10a 100644 --- a/src/tangara/database/tag_parser.hpp +++ b/src/tangara/database/tag_parser.hpp @@ -62,9 +62,9 @@ class GenericTagParser : public ITagParser { // Supported file extensions for parsing tags, derived from the list of // supported audio formats here: // https://cooltech.zone/tangara/docs/music-library/ - static constexpr std::string supported_exts[] = {"flac", "mp3", "ogg", - "ogx", "opus", "wav", - "wv"}; + static constexpr std::string supported_exts[] = {"flac", "m4a", "mp3", + "ogg", "ogx", "opus", + "wav", "wv"}; }; } // namespace database diff --git a/src/tangara/database/track.hpp b/src/tangara/database/track.hpp index d6039451..e215abb1 100644 --- a/src/tangara/database/track.hpp +++ b/src/tangara/database/track.hpp @@ -46,6 +46,7 @@ enum class Container { kFlac = 4, kOpus = 5, kWavPack = 6, + kAlac = 7, }; enum class MediaType { |
