summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorjacqueline <me@jacqueline.id.au>2023-10-16 13:07:52 +1100
committerjacqueline <me@jacqueline.id.au>2023-10-16 13:07:52 +1100
commit96ea6cef8881d005cb06be8a9132535a5564d5fd (patch)
treeb7f1e91780d1fc7c78fd16b8bcf0f92052009f7d /src
parentf03093e5c27555c227e9c04114f59062c8289361 (diff)
downloadtangara-fw-96ea6cef8881d005cb06be8a9132535a5564d5fd.tar.gz
Fix incorrect track lengths
Diffstat (limited to 'src')
-rw-r--r--src/codecs/foxenflac.cpp2
-rw-r--r--src/codecs/vorbis.cpp2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/codecs/foxenflac.cpp b/src/codecs/foxenflac.cpp
index b378e47e..282b8ce1 100644
--- a/src/codecs/foxenflac.cpp
+++ b/src/codecs/foxenflac.cpp
@@ -64,7 +64,7 @@ auto FoxenFlacDecoder::OpenStream(std::shared_ptr<IStream> input)
uint64_t num_samples = fx_flac_get_streaminfo(flac_, FLAC_KEY_N_SAMPLES);
if (num_samples > 0) {
- format.total_samples = num_samples;
+ format.total_samples = num_samples * channels;
}
return format;
diff --git a/src/codecs/vorbis.cpp b/src/codecs/vorbis.cpp
index f553bb42..764f58d9 100644
--- a/src/codecs/vorbis.cpp
+++ b/src/codecs/vorbis.cpp
@@ -121,7 +121,7 @@ auto TremorVorbisDecoder::OpenStream(std::shared_ptr<IStream> input)
auto l = ov_pcm_total(&vorbis_, -1);
std::optional<uint32_t> length;
if (l > 0) {
- length = l;
+ length = l * info->channels;
}
return OutputFormat{