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

◆ set_transformation_parameter()

template<ComputeData InputType = std::vector<Kakshya::DataVariant>, ComputeData OutputType = InputType>
void MayaFlux::Yantra::TemporalTransformer< InputType, OutputType >::set_transformation_parameter ( const std::string &  name,
std::any  value 
)
inlineoverrideprotectedvirtual

Sets transformation parameters.

Parameters
nameParameter name
valueParameter value

Handles setting of temporal operation type and delegates other parameters to base class. Supports both enum and string values for the "operation" parameter.

Common parameters include:

  • "stretch_factor": Time stretching factor (1.0 = no change, >1.0 = slower, <1.0 = faster)
  • "delay_samples": Number of samples to delay
  • "fill_value": Value to fill delayed regions with
  • "fade_in_ratio", "fade_out_ratio": Fade envelope ratios (0.0-1.0)
  • "start_ratio", "end_ratio": Slice boundaries as ratios of total length
  • "target_size": Target size for interpolation
  • "use_cubic": Whether to use cubic interpolation (vs linear)

Reimplemented from MayaFlux::Yantra::UniversalTransformer< InputType, OutputType >.

Definition at line 156 of file TemporalTransformer.hpp.

157 {
158 if (name == "operation") {
159 if (auto r = safe_any_cast<TemporalOperation>(value)) {
160 m_operation = *r.value;
161 return;
162 }
163 if (auto r = safe_any_cast<std::string>(value)) {
164 if (auto e = Reflect::string_to_enum_case_insensitive<TemporalOperation>(*r.value)) {
165 m_operation = *e;
166 return;
167 }
168 }
169 }
171 }
TemporalOperation m_operation
Current temporal operation.
virtual void set_transformation_parameter(const std::string &name, std::any value)
Transformation-specific parameter handling (override for custom parameters)