MayaFlux 0.3.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches
Extract.cpp File Reference
#include "Extract.hpp"
+ Include dependency graph for Extract.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

bool MayaFlux::Kinesis::Discrete::validate_window_parameters (uint32_t window_size, uint32_t hop_size, size_t data_size) noexcept
 Validate window/hop parameters for windowed processing.
 
std::vector< std::pair< size_t, size_t > > MayaFlux::Kinesis::Discrete::merge_intervals (const std::vector< std::pair< size_t, size_t > > &intervals)
 Merge overlapping or adjacent half-open intervals.
 
std::vector< double > MayaFlux::Kinesis::Discrete::slice_intervals (std::span< const double > data, const std::vector< std::pair< size_t, size_t > > &intervals)
 Copy data from a set of half-open intervals into a flat vector.
 
std::vector< std::pair< size_t, size_t > > MayaFlux::Kinesis::Discrete::regions_around_positions (const std::vector< size_t > &positions, size_t half_region, size_t data_size)
 Build [start, end) intervals centred on a set of positions.
 
std::vector< std::pair< size_t, size_t > > MayaFlux::Kinesis::Discrete::intervals_from_window_starts (const std::vector< size_t > &window_starts, uint32_t window_size, size_t data_size)
 Build [start, end) intervals from window start indices.
 
std::vector< double > MayaFlux::Kinesis::Discrete::overlapping_windows (std::span< const double > data, uint32_t window_size, double overlap)
 Extract overlapping windows as a flat concatenated vector.
 
std::vector< double > MayaFlux::Kinesis::Discrete::windowed_by_indices (std::span< const double > data, const std::vector< size_t > &window_starts, uint32_t window_size)
 Extract windows at specific starting indices as a flat concatenated vector.