summaryrefslogtreecommitdiff
path: root/src/tangara
diff options
context:
space:
mode:
authorcooljqln <cooljqln@noreply.codeberg.org>2025-03-19 04:18:10 +0000
committercooljqln <cooljqln@noreply.codeberg.org>2025-03-19 04:18:10 +0000
commit5995b3a48e73a19248f3d15b96bdb27144eabca2 (patch)
treec85ea1b5d86ff37276f37bc008993a8f940f1f6b /src/tangara
parent34e7ce869b8d451e0586e96cc4dabbff8efb56d3 (diff)
parent885eb1812c15263ad759741ad138cf7188fdf739 (diff)
downloadtangara-fw-5995b3a48e73a19248f3d15b96bdb27144eabca2.tar.gz
Merge pull request 'WavPack and APEv2 tags support' (#218) from ayumi/tangara-fw:wavpack into main
Reviewed-on: https://codeberg.org/cool-tech-zone/tangara-fw/pulls/218
Diffstat (limited to 'src/tangara')
-rw-r--r--src/tangara/audio/fatfs_stream_factory.cpp2
-rw-r--r--src/tangara/database/tag_parser.cpp3
-rw-r--r--src/tangara/database/tag_parser.hpp3
-rw-r--r--src/tangara/database/track.hpp1
4 files changed, 8 insertions, 1 deletions
diff --git a/src/tangara/audio/fatfs_stream_factory.cpp b/src/tangara/audio/fatfs_stream_factory.cpp
index 94f22ae9..9089735c 100644
--- a/src/tangara/audio/fatfs_stream_factory.cpp
+++ b/src/tangara/audio/fatfs_stream_factory.cpp
@@ -88,6 +88,8 @@ auto FatfsStreamFactory::ContainerToStreamType(database::Container enc)
return codecs::StreamType::kFlac;
case database::Container::kOpus:
return codecs::StreamType::kOpus;
+ case database::Container::kWavPack:
+ return codecs::StreamType::kWavPack;
case database::Container::kUnsupported:
default:
return {};
diff --git a/src/tangara/database/tag_parser.cpp b/src/tangara/database/tag_parser.cpp
index 6c95d496..0be6cb35 100644
--- a/src/tangara/database/tag_parser.cpp
+++ b/src/tangara/database/tag_parser.cpp
@@ -413,6 +413,9 @@ auto GenericTagParser::ReadAndParseTags(std::string_view p)
case Fopus:
out->encoding(Container::kOpus);
break;
+ case Fwavpack:
+ out->encoding(Container::kWavPack);
+ break;
default:
out->encoding(Container::kUnsupported);
}
diff --git a/src/tangara/database/tag_parser.hpp b/src/tangara/database/tag_parser.hpp
index 220339c0..eb0f4c7c 100644
--- a/src/tangara/database/tag_parser.hpp
+++ b/src/tangara/database/tag_parser.hpp
@@ -63,7 +63,8 @@ class GenericTagParser : public ITagParser {
// supported audio formats here:
// https://cooltech.zone/tangara/docs/music-library/
static constexpr std::string supported_exts[] = {"flac", "mp3", "ogg",
- "ogx", "opus", "wav"};
+ "ogx", "opus", "wav",
+ "wv"};
};
} // namespace database
diff --git a/src/tangara/database/track.hpp b/src/tangara/database/track.hpp
index c7dff425..d6039451 100644
--- a/src/tangara/database/track.hpp
+++ b/src/tangara/database/track.hpp
@@ -45,6 +45,7 @@ enum class Container {
kOgg = 3,
kFlac = 4,
kOpus = 5,
+ kWavPack = 6,
};
enum class MediaType {