LMMS
Loading...
Searching...
No Matches
dsp::tap_distortion Class Reference

#include <audio_fx.h>

Public Member Functions

 tap_distortion ()
void activate ()
void deactivate ()
void set_params (float blend, float drive)
void set_sample_rate (uint32_t sr)
float process (float in)
float get_distortion_level ()

Static Public Member Functions

static float M (float x)
static float D (float x)

Public Attributes

uint32_t srate
bool is_active

Private Attributes

float blend_old
float drive_old
float meter
float rdrive
float rbdr
float kpa
float kpb
float kna
float knb
float ap
float an
float imr
float kc
float srct
float sq
float pwrq
int over
float prev_med
float prev_out
resampleN resampler

Detailed Description

Tom Szilagyi's distortion code, used with permission KF: I'm not 100% sure how this is supposed to work, but it does. I'm planning to rewrite it using more modular approach when I have more time.

Constructor & Destructor Documentation

◆ tap_distortion()

tap_distortion::tap_distortion ( )

Distortion Module by Tom Szilagyi

This module provides a blendable saturation stage

Member Function Documentation

◆ activate()

void tap_distortion::activate ( )

◆ D()

float dsp::tap_distortion::D ( float x)
inlinestatic

◆ deactivate()

void tap_distortion::deactivate ( )

◆ get_distortion_level()

float tap_distortion::get_distortion_level ( )

◆ M()

float dsp::tap_distortion::M ( float x)
inlinestatic

◆ process()

float tap_distortion::process ( float in)

◆ set_params()

void tap_distortion::set_params ( float blend,
float drive )

◆ set_sample_rate()

void tap_distortion::set_sample_rate ( uint32_t sr)

Member Data Documentation

◆ an

float dsp::tap_distortion::an
private

◆ ap

float dsp::tap_distortion::ap
private

◆ blend_old

float dsp::tap_distortion::blend_old
private

◆ drive_old

float dsp::tap_distortion::drive_old
private

◆ imr

float dsp::tap_distortion::imr
private

◆ is_active

bool dsp::tap_distortion::is_active

◆ kc

float dsp::tap_distortion::kc
private

◆ kna

float dsp::tap_distortion::kna
private

◆ knb

float dsp::tap_distortion::knb
private

◆ kpa

float dsp::tap_distortion::kpa
private

◆ kpb

float dsp::tap_distortion::kpb
private

◆ meter

float dsp::tap_distortion::meter
private

◆ over

int dsp::tap_distortion::over
private

◆ prev_med

float dsp::tap_distortion::prev_med
private

◆ prev_out

float dsp::tap_distortion::prev_out
private

◆ pwrq

float dsp::tap_distortion::pwrq
private

◆ rbdr

float dsp::tap_distortion::rbdr
private

◆ rdrive

float dsp::tap_distortion::rdrive
private

◆ resampler

resampleN dsp::tap_distortion::resampler
private

◆ sq

float dsp::tap_distortion::sq
private

◆ srate

uint32_t dsp::tap_distortion::srate

◆ srct

float dsp::tap_distortion::srct
private

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