DaisySP
Loading...
Searching...
No Matches
Public Member Functions | List of all members
daisysp::Chorus Class Reference

Chorus Effect. More...

#include <chorus.h>

Public Member Functions

void Init (float sample_rate)
 
float Process (float in)
 
float GetLeft ()
 
float GetRight ()
 
void SetPan (float panl, float panr)
 
void SetPan (float pan)
 
void SetLfoDepth (float depthl, float depthr)
 
void SetLfoDepth (float depth)
 
void SetLfoFreq (float freql, float freqr)
 
void SetLfoFreq (float freq)
 
void SetDelay (float delayl, float delayr)
 
void SetDelay (float delay)
 
void SetDelayMs (float msl, float msr)
 
void SetDelayMs (float ms)
 
void SetFeedback (float feedbackl, float feedbackr)
 
void SetFeedback (float feedback)
 

Detailed Description

Chorus Effect.

Author
Ben Sergentanis
Date
Jan 2021 Based on https://www.izotope.com/en/learn/understanding-chorus-flangers-and-phasers-in-audio-production.html
and https://www.researchgate.net/publication/236629475_Implementing_Professional_Audio_Effects_with_DSPs

Member Function Documentation

◆ GetLeft()

float Chorus::GetLeft ( )

Get the left channel's last sample

◆ GetRight()

float Chorus::GetRight ( )

Get the right channel's last sample

◆ Init()

void Chorus::Init ( float sample_rate)

Initialize the module

Parameters
sample_rateAudio engine sample rate

◆ Process()

float Chorus::Process ( float in)

Get the net floating point sample. Defaults to left channel.

Parameters
inSample to process

◆ SetDelay() [1/2]

void Chorus::SetDelay ( float delay)

Set both channel delay amounts.

Parameters
delayBoth channel delay amount. Works 0-1.

◆ SetDelay() [2/2]

void Chorus::SetDelay ( float delayl,
float delayr )

Set both channel delay amounts individually.

Parameters
delaylLeft channel delay amount. Works 0-1.
delayrRight channel delay amount.

◆ SetDelayMs() [1/2]

void Chorus::SetDelayMs ( float ms)

Set both channel delay in ms.

Parameters
msBoth channel delay amounts in ms.

◆ SetDelayMs() [2/2]

void Chorus::SetDelayMs ( float msl,
float msr )

Set both channel delay individually.

Parameters
mslLeft channel delay in ms.
msrRight channel delay in ms.

◆ SetFeedback() [1/2]

void Chorus::SetFeedback ( float feedback)

Set both channels feedback.

Parameters
feedbackBoth channel feedback. Works 0-1.

◆ SetFeedback() [2/2]

void Chorus::SetFeedback ( float feedbackl,
float feedbackr )

Set both channels feedback individually.

Parameters
feedbacklLeft channel feedback. Works 0-1.
feedbackrRight channel feedback.

◆ SetLfoDepth() [1/2]

void Chorus::SetLfoDepth ( float depth)

Set both lfo depths.

Parameters
depthBoth channels lfo depth. Works 0-1.

◆ SetLfoDepth() [2/2]

void Chorus::SetLfoDepth ( float depthl,
float depthr )

Set both lfo depths individually.

Parameters
depthlLeft channel lfo depth. Works 0-1.
depthrRight channel lfo depth.

◆ SetLfoFreq() [1/2]

void Chorus::SetLfoFreq ( float freq)

Set both lfo frequencies.

Parameters
depthBoth channel lfo freqs in Hz.

◆ SetLfoFreq() [2/2]

void Chorus::SetLfoFreq ( float freql,
float freqr )

Set both lfo frequencies individually.

Parameters
depthlLeft channel lfo freq in Hz.
depthrRight channel lfo freq in Hz.

◆ SetPan() [1/2]

void Chorus::SetPan ( float pan)

Pan both channels.

Parameters
panWhere to pan both channels to. 0 is left, 1 is right.

◆ SetPan() [2/2]

void Chorus::SetPan ( float panl,
float panr )

Pan both channels individually.

Parameters
panlPan the left channel. 0 is left, 1 is right.
panrPan the right channel.

The documentation for this class was generated from the following files: