Loading...
Searching...
No Matches
Reverb Class Reference

Performs a simple reverb effect on a stream of audio data. More...

#include <juce_Reverb.h>

Classes

struct  Parameters
 Holds the parameters being used by a Reverb object. More...
 

Public Member Functions

 Reverb ()
 
const ParametersgetParameters () const noexcept
 Returns the reverb's current parameters.
 
void setParameters (const Parameters &newParams)
 Applies a new set of parameters to the reverb.
 
void setSampleRate (const double sampleRate)
 Sets the sample rate that will be used for the reverb.
 
void reset ()
 Clears the reverb's buffers.
 
void processStereo (float *const left, float *const right, const int numSamples) noexcept
 Applies the reverb to two stereo channels of audio data.
 
void processMono (float *const samples, const int numSamples) noexcept
 Applies the reverb to a single mono channel of audio data.
 

Detailed Description

Performs a simple reverb effect on a stream of audio data.

This is a simple stereo reverb, based on the technique and tunings used in FreeVerb. Use setSampleRate() to prepare it, and then call processStereo() or processMono() to apply the reverb to your audio data.

See also
ReverbAudioSource

Constructor & Destructor Documentation

◆ Reverb()

Reverb::Reverb ( )

References setParameters(), and setSampleRate().

Member Function Documentation

◆ getParameters()

const Parameters & Reverb::getParameters ( ) const
noexcept

Returns the reverb's current parameters.

◆ setParameters()

void Reverb::setParameters ( const Parameters & newParams)

Applies a new set of parameters to the reverb.

Note that this doesn't attempt to lock the reverb, so if you call this in parallel with the process method, you may get artifacts.

References Reverb::Parameters::dryLevel, Reverb::Parameters::freezeMode, SmoothedValue< FloatType, SmoothingType >::setTargetValue(), Reverb::Parameters::wetLevel, and Reverb::Parameters::width.

Referenced by Reverb().

◆ setSampleRate()

void Reverb::setSampleRate ( const double sampleRate)

Sets the sample rate that will be used for the reverb.

You must call this before the process methods, in order to tell it the correct sample rate.

References jassert, and SmoothedValue< FloatType, SmoothingType >::reset().

Referenced by Reverb().

◆ reset()

void Reverb::reset ( )

Clears the reverb's buffers.

◆ processStereo()

void Reverb::processStereo ( float *const left,
float *const right,
const int numSamples )
noexcept

◆ processMono()

void Reverb::processMono ( float *const samples,
const int numSamples )
noexcept

Applies the reverb to a single mono channel of audio data.

References SmoothedValue< FloatType, SmoothingType >::getNextValue(), jassert, JUCE_BEGIN_IGNORE_WARNINGS_MSVC, and JUCE_END_IGNORE_WARNINGS_MSVC.


The documentation for this class was generated from the following file:
linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram