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

◆ process_to_stream() [2/2]

MAYAFLUX_API std::shared_ptr< Kakshya::DynamicSoundStream > MayaFlux::Yantra::Granular::process_to_stream ( const std::shared_ptr< Kakshya::SignalSourceContainer > &  container,
AttributeExecutor  executor,
const GranularConfig config = {},
GranularOutput  output = GranularOutput::STREAM 
)

Offline granular pipeline using a span-level attribution lambda, terminating in a DynamicSoundStream.

Parameters
containerSource signal data.
executorLambda receiving grain samples and context, returning a scalar.
configPipeline scalar parameters.
outputSTREAM for concatenative, STREAM_ADDITIVE for OLA.
Returns
Populated DynamicSoundStream.

Definition at line 930 of file GranularWorkflow.cpp.

935{
936 auto ctx = make_granular_context(config, std::move(executor));
937 ctx.execution_metadata["container"] = container;
938
939 return run_to_stream(container, ctx, config.attribution_context,
940 output, config.taper);
941}
ExecutionContext make_granular_context(const GranularConfig &config, AnalysisType analysis_type, const std::string &qualifier={})
Construct an ExecutionContext for the granular pipeline using a built-in AnalysisType.

References MayaFlux::Yantra::Granular::GranularConfig::attribution_context, make_granular_context(), and MayaFlux::Yantra::Granular::GranularConfig::taper.

+ Here is the call graph for this function: