arduino-audio-tools
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
audio_tools::LogarithmicVolumeControl Class Reference

Parametric Logarithmic volume control. Using the formula pow(b,input) * a - a, where b is b = pow(((1/ym)-1), 2) and a is a = 1.0 / (b - 1.0). The parameter ym is determining the steepness. See https://electronics.stackexchange.com/questions/304692/formula-for-logarithmic-audio-taper-pot. More...

#include <VolumeControl.h>

Inheritance diagram for audio_tools::LogarithmicVolumeControl:
audio_tools::VolumeControl

Public Member Functions

 LogarithmicVolumeControl (float ym=0.1)
 
virtual float getVolumeFactor (float input)
 determines a multiplication factor (0.0 to 1.0) from an input value (0.0 to 1.0). More...
 
virtual float getVolumeFactor (float volume)=0
 determines a multiplication factor (0.0 to 1.0) from an input value (0.0 to 1.0). More...
 

Protected Attributes

float ym
 

Additional Inherited Members

- Protected Member Functions inherited from audio_tools::VolumeControl
virtual float limit (float in)
 limits the output to the range of 0 to 1.0
 
float map (float x, float in_min, float in_max, float out_min, float out_max)
 similar to the Arduino map function - but using floats
 

Detailed Description

Parametric Logarithmic volume control. Using the formula pow(b,input) * a - a, where b is b = pow(((1/ym)-1), 2) and a is a = 1.0 / (b - 1.0). The parameter ym is determining the steepness. See https://electronics.stackexchange.com/questions/304692/formula-for-logarithmic-audio-taper-pot.

Author
Phil Schatzmann

Member Function Documentation

◆ getVolumeFactor()

virtual float audio_tools::LogarithmicVolumeControl::getVolumeFactor ( float  volume)
inlinevirtual

determines a multiplication factor (0.0 to 1.0) from an input value (0.0 to 1.0).

Implements audio_tools::VolumeControl.


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