From b4670d6cffd0a332a4664250407e901d1492c097 Mon Sep 17 00:00:00 2001 From: Thomas Wilshaw Date: Sun, 25 Apr 2021 21:08:28 +0100 Subject: [PATCH] Revert "audioplaybackcache: optimise writing to PCM" This reverts commit 59163e81276d229f117701c150af83811ffad818. --- app/render/audioplaybackcache.cpp | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/app/render/audioplaybackcache.cpp b/app/render/audioplaybackcache.cpp index df2d334d1..e83417e31 100644 --- a/app/render/audioplaybackcache.cpp +++ b/app/render/audioplaybackcache.cpp @@ -64,14 +64,10 @@ void AudioPlaybackCache::WritePCM(const TimeRange &range, SampleBufferPtr sample // Ensure if we have enough segments to write this data, creating more if not qint64 length_diff = params_.time_to_bytes(range.out()) - playlist_.GetLength(); - qint64 whole_segments = length_diff / kDefaultSegmentSize; - qint64 remainder = length_diff % kDefaultSegmentSize; - - for (int i = 0; i < whole_segments; i++) { - playlist_.push_back(CreateSegment(kDefaultSegmentSize, playlist_.GetLength())); - } - if (remainder > 0) { - playlist_.push_back(CreateSegment(remainder, playlist_.GetLength())); + while (length_diff > 0) { + qint64 seg_sz = qMin(kDefaultSegmentSize, length_diff); + playlist_.push_back(CreateSegment(seg_sz, playlist_.GetLength())); + length_diff -= seg_sz; } // Convert to packed data, which is what we store on disk so it can be played back easily