39 int64_t iNumChannels = 1;
40 int64_t iReadPosition = 0;
41 int64_t iWritePosition = 0;
42 std::vector<float> Samples;
44 int64_t Frames()
const
46 return iWritePosition - iReadPosition;
49 void Extend(int64_t iFrames) {
50 uint64_t iSamples = uint64_t((iWritePosition + iFrames) * iNumChannels);
51 Samples.resize(iSamples);
56 int64_t iSamples = iReadPosition * iNumChannels;
57 Samples.erase(Samples.begin(), Samples.begin() + iSamples);
59 iWritePosition -= iReadPosition;
60 iReadPosition -= iReadPosition;