25 void Pull(
float*
const* buffer,
size_t samplesPerChannel)
override
27 const auto numFrames =
mInput[0].size();
28 const auto remainingSamples =
30 const size_t framesToRead =
std::min(
32 static_cast<decltype(remainingSamples)
>(samplesPerChannel));
33 const auto numZerosToPad = samplesPerChannel - framesToRead;
34 for (
auto i = 0u; i <
mInput.size(); ++i)
37 std::copy(in, in + framesToRead, buffer[i]);
39 buffer[i] + framesToRead, buffer[i] + framesToRead + numZerosToPad,
46 const std::vector<std::vector<float>>&
mInput;
void Pull(float *const *buffer, size_t samplesPerChannel) override
unsigned long long mNumPulledFrames
TimeAndPitchRealSource(const std::vector< std::vector< float > > &input)
const std::vector< std::vector< float > > & mInput
void copy(const T *src, T *dst, int32_t n)