From 56adf5005f755d3875b89bd85ae162dce10766ea Mon Sep 17 00:00:00 2001 From: itsmattkc Date: Wed, 19 Feb 2020 12:45:01 +1100 Subject: [PATCH] decoder: provide conform progress signal --- app/codec/decoder.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/app/codec/decoder.cpp b/app/codec/decoder.cpp index 3e117e847..1bb15c657 100644 --- a/app/codec/decoder.cpp +++ b/app/codec/decoder.cpp @@ -229,6 +229,8 @@ void Decoder::Conform(const AudioRenderingParams ¶ms, const QAtomicInt* canc // Convert one second of audio at a time int input_buffer_sz = input.params().time_to_bytes(1); + int read_count = 0; + while (!input.at_end()) { if (cancelled && *cancelled) { break; @@ -241,6 +243,9 @@ void Decoder::Conform(const AudioRenderingParams ¶ms, const QAtomicInt* canc int in_sample_count = input.params().bytes_to_samples(read_samples.size()); ConformInternal(resampler, &conformed_output, read_samples.data(), in_sample_count); + + read_count += read_samples.size(); + emit IndexProgress(100.0 * static_cast(read_count) / static_cast(input.data_length())); } // Flush resampler