Skip to content

dsp_extra


unitimpulse function (generic::unitimpulse)

template <typename T = int> auto unitimpulse()

Returns expression template that generates a unit impulse


jaehne function (generic::jaehne)

template <typename T = fbase>
auto jaehne(std::type_identity_t<T> magn, size_t size)

Returns expression template that generates a jaehne vector Generates the sine with linearly increasing frequency from 0hz to nyquist frequency.


swept function (generic::swept)

template <typename T = fbase>
auto swept(std::type_identity_t<T> magn, size_t size)

Returns expression template that generates a jaehne vector Generates the sine with logarithmically increasing frequency from 0hz to nyquist frequency.


note_to_hertz class (generic::fn::note_to_hertz)

note_to_hertz

hertz_to_note class (generic::fn::hertz_to_note)

hertz_to_note

amp_to_dB class (generic::fn::amp_to_dB)

amp_to_dB

dB_to_amp class (generic::fn::dB_to_amp)

dB_to_amp

power_to_dB class (generic::fn::power_to_dB)

power_to_dB

dB_to_power class (generic::fn::dB_to_power)

dB_to_power

speaker_type enum

enum class speaker_type : int

Speaker types (positions) Matches VST3 definitions


speaker_arrangement enum

enum class speaker_arrangement : int

Predefined speaker arrangements Matches VST3 definitions


arrangement_speakers function

std::span<const speaker_type>
arrangement_speakers(speaker_arrangement arr) noexcept

Returns the canonical channel list for a speaker arrangement.

Maps a speaker_arrangement to an ordered, immutable sequence of speaker_type values. The returned span references static storage valid for the program lifetime and performs no allocations.
Param arr The speaker arrangement to resolve.
Returns std::span<const speaker_type> Ordered channels for the arrangement, or an empty span if unsupported.


arrangement_for_channels function

speaker_arrangement
arrangement_for_channels(size_t count) noexcept

Returns a predefined speaker arrangement for a given number of channels If no predefined arrangement exists, returns speaker_arrangement::None


saturate_I class (generic::fn::saturate_I)

saturate_I

saturate_II class (generic::fn::saturate_II)

saturate_II

mixdown function (generic::mixdown)

template <typename... E>
expression_function<fn::add, E...> mixdown(E &&...e)

Returns template expression that returns the sum of all the inputs


stereo_matrix class (generic::stereo_matrix)

stereo_matrix

mixdown_stereo function (generic::mixdown_stereo)

template <typename Left, typename Right,
          typename Result = expression_function<
              stereo_matrix, expression_pack<Left, Right>>>
Result mixdown_stereo(Left &&left, Right &&right,
                      const f64x2x2 &matrix)

Returns template expression that returns the vector of length 2 containing mix of the left and right channels


aweighting class (generic::fn::aweighting)

aweighting

bweighting class (generic::fn::bweighting)

bweighting

cweighting class (generic::fn::cweighting)

cweighting

expression_goertzel class (generic::expression_goertzel)

template <typename T> expression_goertzel

expression_parallel_goertzel class (generic::expression_parallel_goertzel)

template <typename T, size_t width>
expression_parallel_goertzel

Auto-generated from sources, Revision , https://github.com/kfrlib/kfr/blob//include/kfr/