MayaFlux 0.1.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches
ExtractionHelper.hpp File Reference

Central helper for extraction operations - uses analyzers to find data. More...

+ Include dependency graph for ExtractionHelper.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  MayaFlux
 Main namespace for the Maya Flux audio engine.
 
namespace  MayaFlux::Yantra
 

Functions

std::vector< std::vector< double > > MayaFlux::Yantra::extract_high_energy_data (const std::vector< std::span< const double > > &data, double energy_threshold=0.1, uint32_t window_size=512, uint32_t hop_size=256)
 Extract data from high-energy regions using EnergyAnalyzer.
 
std::vector< std::vector< double > > MayaFlux::Yantra::extract_peak_data (const std::vector< std::span< const double > > &data, double threshold=0.1, double min_distance=10.0, uint32_t region_size=256)
 Extract data from peak regions using peak detection.
 
std::vector< std::vector< double > > MayaFlux::Yantra::extract_outlier_data (const std::vector< std::span< const double > > &data, double std_dev_threshold=2.0, uint32_t window_size=512, uint32_t hop_size=256)
 Extract data from statistical outlier regions.
 
std::vector< std::vector< double > > MayaFlux::Yantra::extract_high_spectral_data (const std::vector< std::span< const double > > &data, double spectral_threshold=0.1, uint32_t window_size=512, uint32_t hop_size=256)
 Extract data from regions with high spectral energy.
 
std::vector< std::vector< double > > MayaFlux::Yantra::extract_above_mean_data (const std::vector< std::span< const double > > &data, double mean_multiplier=1.5, uint32_t window_size=512, uint32_t hop_size=256)
 Extract data from regions with values above statistical mean.
 
std::vector< std::vector< double > > MayaFlux::Yantra::extract_overlapping_windows (const std::vector< std::span< const double > > &data, uint32_t window_size=512, double overlap=0.5)
 Extract overlapping windows of actual data.
 
std::vector< std::vector< double > > MayaFlux::Yantra::extract_windowed_data_by_indices (const std::vector< std::span< const double > > &data, const std::vector< size_t > &window_indices, uint32_t window_size=512)
 Extract specific data windows by indices.
 
std::vector< std::vector< double > > MayaFlux::Yantra::extract_data_from_regions (const std::vector< std::span< const double > > &data, const std::vector< Kakshya::Region > &regions)
 Extract actual data from specified regions.
 
std::vector< std::vector< double > > MayaFlux::Yantra::extract_data_from_region_group (const std::vector< std::span< const double > > &data, const Kakshya::RegionGroup &region_group)
 Extract data from a RegionGroup.
 
std::vector< std::string > MayaFlux::Yantra::get_available_extraction_methods ()
 Get available extraction methods.
 
bool MayaFlux::Yantra::validate_extraction_parameters (uint32_t window_size, uint32_t hop_size, size_t data_size)
 Validate extraction parameters.
 
std::vector< std::vector< double > > MayaFlux::Yantra::extract_zero_crossing_data (const std::vector< std::span< const double > > &data, double threshold=0.0, double min_distance=1.0, uint32_t region_size=1)
 Extract data at zero crossing points using existing EnergyAnalyzer.
 
std::vector< std::vector< double > > MayaFlux::Yantra::extract_silence_data (const std::vector< std::span< const double > > &data, double silence_threshold=0.01, uint32_t min_duration=1024, uint32_t window_size=512, uint32_t hop_size=256)
 Extract data from silent regions using existing EnergyAnalyzer.
 
std::vector< std::vector< double > > MayaFlux::Yantra::extract_onset_data (const std::vector< std::span< const double > > &data, double threshold=0.3, uint32_t region_size=512, uint32_t window_size=1024, uint32_t hop_size=256)
 Extract data at onset/transient positions using spectral flux.
 

Detailed Description

Central helper for extraction operations - uses analyzers to find data.

ExtractionHelper uses analyzers to identify regions/features of interest, then extracts and returns the actual DATA from those regions.

Key concept: Analyzers find WHERE, extractors return WHAT.

  • Analyzer: "High energy at samples 1000-1500, 3000-3500"
  • Extractor: Returns the actual audio data from samples 1000-1500, 3000-3500

Definition in file ExtractionHelper.hpp.