summaryrefslogtreecommitdiff
path: root/src/audio/include
diff options
context:
space:
mode:
authorjacqueline <me@jacqueline.id.au>2024-01-18 14:50:05 +1100
committerjacqueline <me@jacqueline.id.au>2024-01-18 14:50:05 +1100
commit2d7f9fc775c4a959f17f225f5231ec9a40ceaf95 (patch)
tree04a94c9efbf123d07c6e74e619f1eec8dd7eaa62 /src/audio/include
parent200a43fad309813c3ebbc3da35dbb97367bde7ac (diff)
downloadtangara-fw-2d7f9fc775c4a959f17f225f5231ec9a40ceaf95.tar.gz
calculate length for CBR mp3 files
Diffstat (limited to 'src/audio/include')
-rw-r--r--src/audio/include/audio_source.hpp2
-rw-r--r--src/audio/include/fatfs_source.hpp4
-rw-r--r--src/audio/include/readahead_source.hpp4
3 files changed, 8 insertions, 2 deletions
diff --git a/src/audio/include/audio_source.hpp b/src/audio/include/audio_source.hpp
index a54cb260..68145f5b 100644
--- a/src/audio/include/audio_source.hpp
+++ b/src/audio/include/audio_source.hpp
@@ -28,6 +28,8 @@ class TaggedStream : public codecs::IStream {
auto CurrentPosition() -> int64_t override;
+ auto Size() -> std::optional<int64_t> override;
+
auto SetPreambleFinished() -> void override;
private:
diff --git a/src/audio/include/fatfs_source.hpp b/src/audio/include/fatfs_source.hpp
index e4187d60..45ab34c6 100644
--- a/src/audio/include/fatfs_source.hpp
+++ b/src/audio/include/fatfs_source.hpp
@@ -34,6 +34,8 @@ class FatfsSource : public codecs::IStream {
auto CurrentPosition() -> int64_t override;
+ auto Size() -> std::optional<int64_t> override;
+
FatfsSource(const FatfsSource&) = delete;
FatfsSource& operator=(const FatfsSource&) = delete;
@@ -41,4 +43,4 @@ class FatfsSource : public codecs::IStream {
std::unique_ptr<FIL> file_;
};
-} // namespace audio \ No newline at end of file
+} // namespace audio
diff --git a/src/audio/include/readahead_source.hpp b/src/audio/include/readahead_source.hpp
index bbc0da12..58076350 100644
--- a/src/audio/include/readahead_source.hpp
+++ b/src/audio/include/readahead_source.hpp
@@ -38,6 +38,8 @@ class ReadaheadSource : public codecs::IStream {
auto CurrentPosition() -> int64_t override;
+ auto Size() -> std::optional<int64_t> override;
+
auto SetPreambleFinished() -> void override;
ReadaheadSource(const ReadaheadSource&) = delete;
@@ -55,4 +57,4 @@ class ReadaheadSource : public codecs::IStream {
int64_t tell_;
};
-} // namespace audio \ No newline at end of file
+} // namespace audio