MayaFlux 0.3.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches
Convolution.cpp File Reference
#include "Convolution.hpp"
#include "MayaFlux/Transitive/Parallel/Execution.hpp"
#include <Eigen/Dense>
#include <unsupported/Eigen/FFT>
+ Include dependency graph for Convolution.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

std::vector< double > MayaFlux::Kinesis::Discrete::apply_convolution (std::span< const double > src, std::span< const double > kernel, const ConvolutionProcessor &processor, bool full_size=false)
 Core FFT convolution engine.
 
std::vector< double > MayaFlux::Kinesis::Discrete::convolve (std::span< const double > src, std::span< const double > ir)
 Linear FFT convolution.
 
std::vector< double > MayaFlux::Kinesis::Discrete::cross_correlate (std::span< const double > src, std::span< const double > tmpl, bool normalize=true)
 Cross-correlation via FFT.
 
std::vector< double > MayaFlux::Kinesis::Discrete::matched_filter (std::span< const double > src, std::span< const double > reference)
 Matched filter (normalised cross-correlation)
 
std::vector< double > MayaFlux::Kinesis::Discrete::deconvolve (std::span< const double > src, std::span< const double > ir, double regularization=1e-6)
 Frequency-domain deconvolution with Tikhonov regularisation.
 
std::vector< double > MayaFlux::Kinesis::Discrete::auto_correlate (std::span< const double > src, bool normalize=true)
 Auto-correlation via FFT.