summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
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{