Sound Byte Libs 0.5.1-121-g3358a44
C++ firmware library for audio applications on 32-bit ARM Cortex-M processors
Loading...
Searching...
No Matches
sbl::dsp::lut Namespace Reference

Lookup-table access and the generated tables. More...

Detailed Description

Lookup-table access and the generated tables.

Namespaces

namespace  detail
 

Functions

template<uint16_t Size>
float lookup_linear (const float *table, uint32_t phase)
 
template<uint16_t Size>
float lookup_cubic (const float *table, uint32_t phase)
 
template<uint16_t Size>
float crossfade (const float *table_a, const float *table_b, uint32_t phase, float balance)
 

Variables

constexpr float bow_stk_256 [2056]
 
constexpr uint16_t bow_stk_256_size = 2048
 
constexpr float bow_stk_limits [8]
 
constexpr uint16_t bow_stk_limits_size = 8
 
constexpr float bow_stribeck_256 [2056]
 
constexpr uint16_t bow_stribeck_256_size = 2048
 
constexpr float bow_stribeck_limits [8]
 
constexpr uint16_t bow_stribeck_limits_size = 8
 
constexpr float pitch_ratio_high_256 [257]
 
constexpr uint16_t pitch_ratio_high_256_size = 256
 
constexpr float pitch_ratio_low_256 [257]
 
constexpr uint16_t pitch_ratio_low_256_size = 256
 
constexpr float sin_1024 [1026]
 
constexpr uint16_t sin_1024_size = 1024
 
constexpr float sin_256 [258]
 
constexpr uint16_t sin_256_size = 256
 
constexpr float triangle_256 [258]
 
constexpr uint16_t triangle_256_size = 256
 

Function Documentation

◆ lookup_linear()

template<uint16_t Size>
float sbl::dsp::lut::lookup_linear ( const float *  table,
uint32_t  phase 
)
inline
Note
All functions in sbl::dsp::lut are ISR-safe — bounded computation, no I/O.

Definition at line 45 of file lut.hpp.

References sbl::dsp::lut::detail::log2_of().

◆ lookup_cubic()

template<uint16_t Size>
float sbl::dsp::lut::lookup_cubic ( const float *  table,
uint32_t  phase 
)
inline

Definition at line 58 of file lut.hpp.

References sbl::dsp::lut::detail::log2_of().

◆ crossfade()

template<uint16_t Size>
float sbl::dsp::lut::crossfade ( const float *  table_a,
const float *  table_b,
uint32_t  phase,
float  balance 
)
inline

Definition at line 87 of file lut.hpp.

Variable Documentation

◆ bow_stk_256

constexpr float sbl::dsp::lut::bow_stk_256[2056]
inlineconstexpr

Definition at line 10 of file bow_stk_256.hpp.

◆ bow_stk_256_size

constexpr uint16_t sbl::dsp::lut::bow_stk_256_size = 2048
inlineconstexpr

Definition at line 356 of file bow_stk_256.hpp.

◆ bow_stk_limits

constexpr float sbl::dsp::lut::bow_stk_limits[8]
inlineconstexpr
Initial value:
= {
1.000000000e-01f, 2.000000000e-01f, 3.000000000e-01f, 4.000000000e-01f, 5.000000000e-01f, 6.000000000e-01f,
7.000000000e-01f, 8.000000000e-01f
}

Definition at line 10 of file bow_stk_limits.hpp.

◆ bow_stk_limits_size

constexpr uint16_t sbl::dsp::lut::bow_stk_limits_size = 8
inlineconstexpr

Definition at line 15 of file bow_stk_limits.hpp.

◆ bow_stribeck_256

constexpr float sbl::dsp::lut::bow_stribeck_256[2056]
inlineconstexpr

Definition at line 10 of file bow_stribeck_256.hpp.

◆ bow_stribeck_256_size

constexpr uint16_t sbl::dsp::lut::bow_stribeck_256_size = 2048
inlineconstexpr

Definition at line 356 of file bow_stribeck_256.hpp.

◆ bow_stribeck_limits

constexpr float sbl::dsp::lut::bow_stribeck_limits[8]
inlineconstexpr
Initial value:
= {
1.000000000e-01f, 2.000000000e-01f, 3.000000000e-01f, 4.000000000e-01f, 5.000000000e-01f, 6.000000000e-01f,
7.000000000e-01f, 8.000000000e-01f
}

Definition at line 10 of file bow_stribeck_limits.hpp.

◆ bow_stribeck_limits_size

constexpr uint16_t sbl::dsp::lut::bow_stribeck_limits_size = 8
inlineconstexpr

Definition at line 15 of file bow_stribeck_limits.hpp.

◆ pitch_ratio_high_256

constexpr float sbl::dsp::lut::pitch_ratio_high_256[257]
inlineconstexpr

Definition at line 10 of file pitch_ratio_high_256.hpp.

Referenced by sbl::dsp::math::semitones_to_ratio().

◆ pitch_ratio_high_256_size

constexpr uint16_t sbl::dsp::lut::pitch_ratio_high_256_size = 256
inlineconstexpr

Definition at line 56 of file pitch_ratio_high_256.hpp.

◆ pitch_ratio_low_256

constexpr float sbl::dsp::lut::pitch_ratio_low_256[257]
inlineconstexpr

Definition at line 10 of file pitch_ratio_low_256.hpp.

Referenced by sbl::dsp::math::semitones_to_ratio().

◆ pitch_ratio_low_256_size

constexpr uint16_t sbl::dsp::lut::pitch_ratio_low_256_size = 256
inlineconstexpr

Definition at line 56 of file pitch_ratio_low_256.hpp.

◆ sin_1024

constexpr float sbl::dsp::lut::sin_1024[1026]
inlineconstexpr

Definition at line 10 of file sin_1024.hpp.

◆ sin_1024_size

constexpr uint16_t sbl::dsp::lut::sin_1024_size = 1024
inlineconstexpr

Definition at line 184 of file sin_1024.hpp.

◆ sin_256

constexpr float sbl::dsp::lut::sin_256[258]
inlineconstexpr

Definition at line 10 of file sin_256.hpp.

◆ sin_256_size

constexpr uint16_t sbl::dsp::lut::sin_256_size = 256
inlineconstexpr

Definition at line 56 of file sin_256.hpp.

◆ triangle_256

constexpr float sbl::dsp::lut::triangle_256[258]
inlineconstexpr

Definition at line 10 of file triangle_256.hpp.

◆ triangle_256_size

constexpr uint16_t sbl::dsp::lut::triangle_256_size = 256
inlineconstexpr

Definition at line 56 of file triangle_256.hpp.