MayaFlux 0.1.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ ModalNetwork() [1/2]

MayaFlux::Nodes::ModalNetwork::ModalNetwork ( size_t  num_modes,
double  fundamental = 220.0,
Spectrum  spectrum = Spectrum::HARMONIC,
double  base_decay = 1.0 
)

Create modal network with predefined spectrum.

Parameters
num_modesNumber of resonant modes
fundamentalBase frequency in Hz
spectrumFrequency relationship pattern
base_decayBase decay time in seconds (modes get proportional decay)

Definition at line 13 of file ModalNetwork.cpp.

15 : m_spectrum(spectrum)
16 , m_fundamental(fundamental)
17{
20
21 auto ratios = generate_spectrum_ratios(spectrum, num_modes);
22 initialize_modes(ratios, base_decay);
23}
static std::vector< double > generate_spectrum_ratios(Spectrum spectrum, size_t count)
Generate frequency ratios for predefined spectra.
void initialize_modes(const std::vector< double > &ratios, double base_decay)
Initialize modes with given frequency ratios.
void set_topology(Topology topology)
Set the network's topology.
@ INDEPENDENT
No connections, nodes process independently.
@ AUDIO_SINK
Aggregated audio samples sent to output.
void set_output_mode(OutputMode mode)
Set the network's output routing mode.

References MayaFlux::Nodes::NodeNetwork::AUDIO_SINK, generate_spectrum_ratios(), MayaFlux::Nodes::NodeNetwork::INDEPENDENT, initialize_modes(), MayaFlux::Nodes::NodeNetwork::set_output_mode(), and MayaFlux::Nodes::NodeNetwork::set_topology().

+ Here is the call graph for this function: