DaisySP
Loading...
Searching...
No Matches
daisysp::ModalVoice Class Reference

Simple modal synthesis voice with a mallet exciter: click -> LPF -> resonator. More...

#include <modalvoice.h>

Public Member Functions

void Init (float sample_rate)
 
float Process (bool trigger=false)
 
void SetSustain (bool sustain)
 
void Trig ()
 
void SetFreq (float freq)
 
void SetAccent (float accent)
 
void SetStructure (float structure)
 
void SetBrightness (float brightness)
 
void SetDamping (float damping)
 
float GetAux ()
 

Detailed Description

Simple modal synthesis voice with a mallet exciter: click -> LPF -> resonator.

Author
Ben Sergentanis
Date
Jan 2021 The click can be replaced by continuous white noise.

Ported from pichenettes/eurorack/plaits/dsp/physical_modelling/modal_voice.h
and pichenettes/eurorack/plaits/dsp/physical_modelling/modal_voice.cc
to an independent module.
Original code written by Emilie Gillet in 2016.

Member Function Documentation

◆ GetAux()

float ModalVoice::GetAux ( )

Get the raw excitation signal. Must call Process() first.

◆ Init()

void ModalVoice::Init ( float sample_rate)

Initialize the module

Parameters
sample_rateAudio engine sample rate

◆ Process()

float ModalVoice::Process ( bool trigger = false)

Get the next sample

Parameters
triggerStrike the resonator. Defaults to false.

◆ SetAccent()

void ModalVoice::SetAccent ( float accent)

Hit the resonator a bit harder.

Parameters
accentWorks 0-1.

◆ SetBrightness()

void ModalVoice::SetBrightness ( float brightness)

Set the brighness of the resonator, and the noise density.

Parameters
brightnessWorks best 0-1

◆ SetDamping()

void ModalVoice::SetDamping ( float damping)

How long the resonant body takes to decay.

Parameters
dampingWorks best 0-1

◆ SetFreq()

void ModalVoice::SetFreq ( float freq)

Set the resonator root frequency.

Parameters
freqFrequency in Hz.

◆ SetStructure()

void ModalVoice::SetStructure ( float structure)

Changes the general charater of the resonator (stiffness, brightness)

Parameters
structureWorks best from 0-1

◆ SetSustain()

void ModalVoice::SetSustain ( bool sustain)

Continually excite the resonator with noise.

Parameters
sustainTrue turns on the noise.

◆ Trig()

void ModalVoice::Trig ( )

Strike the resonator.


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