45 void SetGain(
float gain);
54 void SetRt60PerOctaveBand(
const float* rt60_values);
71 void AccumulateOverlap(
size_t channel_index,
77 void GenerateAnalysisWindow();
82 void GenerateRandomPhaseBuffer();
91 void GetNextReverbBlock(
size_t delay_index,
99 void InitializeCircularBuffersAndAccumulators();
102 const int sample_rate_;
105 const size_t frames_per_buffer_;
109 size_t magnitude_delay_index_;
110 size_t overlap_add_index_;
144 std::vector<std::unique_ptr<CircularBuffer>> output_circular_buffers_;
163 std::vector<AudioBuffer> output_accumulator_;
167 bool is_gain_near_zero_;
168 bool is_feedback_near_zero_;