diff options
author | Alex Marsev <alex.marsev@gmail.com> | 2016-02-20 12:13:04 +0300 |
---|---|---|
committer | Alex Marsev <alex.marsev@gmail.com> | 2016-02-20 13:22:20 +0300 |
commit | 5cd6b998a90c1b2d60c9fa5a486da2df23739c02 (patch) | |
tree | 128ab36739760c2e19acc081a2ee4b1c0da25078 | |
parent | e25e88a87fdafd71c5f19ce20e82ad04af590aec (diff) |
Tweak deinterleave loop in DspTempo2
For both speed and consistency.
-rw-r--r-- | src/DspTempo2.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/DspTempo2.cpp b/src/DspTempo2.cpp index d425810..f94f293 100644 --- a/src/DspTempo2.cpp +++ b/src/DspTempo2.cpp @@ -102,8 +102,9 @@ namespace SaneAudioRenderer float* inputData = (float*)chunk.GetData();
- for (size_t i = 0, n = chunk.GetSampleCount(); i < n; i++)
- outputData[i % m_channels][i / m_channels] = inputData[i];
+ for (size_t channel = 0; channel < m_channels; channel++)
+ for (size_t i = 0, n = chunk.GetFrameCount(); i < n; i++)
+ outputData[channel][i] = inputData[channel + i * m_channels];
chunk = std::move(output);
|