// ReverbAccumulationBuffer is a circular delay buffer with one client reading // from it and multiple clients writing/accumulating to it at different delay // offsets from the read position. The read operation will zero the memory just // read from the buffer, so it will be ready for accumulation the next time // around. class ReverbAccumulationBuffer { public:
ReverbAccumulationBuffer(); // Returns false on failure. bool allocate(size_t length);
// This will read from, then clear-out numberOfFrames void readAndClear(float* destination, size_t numberOfFrames);
// Each ReverbConvolverStage will accumulate its output at the appropriate // delay from the read position. We need to pass in and update readIndex here, // since each ReverbConvolverStage may be running in a different thread than // the realtime thread calling ReadAndClear() and maintaining m_readIndex void accumulate(constfloat* source, size_t numberOfFrames, size_t* readIndex,
size_t delayFrames);
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.