MayaFlux 0.5.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches
Coefficients.cpp File Reference
#include "Coefficients.hpp"
#include "Taper.hpp"
#include <Eigen/Dense>
+ Include dependency graph for Coefficients.cpp:

Go to the source code of this file.

Namespaces

namespace  MayaFlux
 Main namespace for the Maya Flux audio engine.
 
namespace  MayaFlux::Kinesis
 
namespace  MayaFlux::Kinesis::Discrete
 

Functions

void MayaFlux::Kinesis::Discrete::biquad_allpass (double frequency, double q, double sample_rate, std::vector< double > &a, std::vector< double > &b)
 Second-order allpass coefficients.
 
void MayaFlux::Kinesis::Discrete::biquad_bandpass (double frequency, double q, double sample_rate, std::vector< double > &a, std::vector< double > &b)
 Second-order bandpass coefficients, constant 0 dB peak gain.
 
void MayaFlux::Kinesis::Discrete::biquad_high_shelf (double frequency, double slope, double gain_db, double sample_rate, std::vector< double > &a, std::vector< double > &b)
 Second-order high shelf coefficients.
 
void MayaFlux::Kinesis::Discrete::biquad_highpass (double frequency, double q, double sample_rate, std::vector< double > &a, std::vector< double > &b)
 Second-order highpass coefficients.
 
void MayaFlux::Kinesis::Discrete::biquad_low_shelf (double frequency, double slope, double gain_db, double sample_rate, std::vector< double > &a, std::vector< double > &b)
 Second-order low shelf coefficients.
 
void MayaFlux::Kinesis::Discrete::biquad_lowpass (double frequency, double q, double sample_rate, std::vector< double > &a, std::vector< double > &b)
 Second-order lowpass coefficients.
 
void MayaFlux::Kinesis::Discrete::biquad_notch (double frequency, double q, double sample_rate, std::vector< double > &a, std::vector< double > &b)
 Second-order notch coefficients.
 
void MayaFlux::Kinesis::Discrete::biquad_peaking (double frequency, double q, double gain_db, double sample_rate, std::vector< double > &a, std::vector< double > &b)
 Second-order peaking coefficients.
 
std::vector< double > MayaFlux::Kinesis::Discrete::cascade (std::span< const double > lhs, std::span< const double > rhs)
 Polynomial product of two coefficient vectors.
 
void MayaFlux::Kinesis::Discrete::dc_block (double pole, std::vector< double > &a, std::vector< double > &b)
 DC blocking filter.
 
std::vector< double > MayaFlux::Kinesis::Discrete::lagrange_delay (double delay, size_t order)
 Lagrange fractional-delay FIR coefficients.
 
double MayaFlux::Kinesis::Discrete::max_pole_magnitude (std::span< const double > a)
 Largest pole magnitude of a denominator polynomial.
 
void MayaFlux::Kinesis::Discrete::one_pole (double pole, std::vector< double > &a, std::vector< double > &b)
 One-pole filter specified by pole position.
 
void MayaFlux::Kinesis::Discrete::resonator (double pole_radius, double pole_angle, std::vector< double > &a, std::vector< double > &b)
 Two-pole resonator specified by z-plane pole position.
 
std::vector< double > MayaFlux::Kinesis::Discrete::savitzky_golay (size_t window, size_t poly_order, size_t derivative=0)
 Savitzky-Golay FIR coefficients for smoothing or differentiation.
 
std::vector< double > MayaFlux::Kinesis::Discrete::sinc_bandpass (double low_hz, double high_hz, double sample_rate, size_t taps)
 Windowed-sinc bandpass FIR coefficients.
 
std::vector< double > MayaFlux::Kinesis::Discrete::sinc_highpass (double frequency, double sample_rate, size_t taps)
 Windowed-sinc highpass FIR coefficients.
 
std::vector< double > MayaFlux::Kinesis::Discrete::sinc_lowpass (double frequency, double sample_rate, size_t taps)
 Windowed-sinc lowpass FIR coefficients.