|
MayaFlux 0.3.0
Digital-First Multimedia Processing Framework
|
Discrete sequence analysis primitives for MayaFlux::Kinesis. More...
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::Kinesis |
| namespace | MayaFlux::Kinesis::Discrete |
Functions | |
| size_t | MayaFlux::Kinesis::Discrete::num_windows (size_t data_size, uint32_t window_size, uint32_t hop_size) noexcept |
| Compute the number of analysis windows for a given data size. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::rms (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size) |
| RMS energy per window. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::peak (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size) |
| Peak amplitude per window. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::power (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size) |
| Power (sum of squares) per window. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::dynamic_range (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size) |
| Dynamic range in dB per window. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::zero_crossing_rate (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size) |
| Zero-crossing rate per window. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::spectral_energy (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size) |
| Spectral energy per window using Hann-windowed FFT. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::low_frequency_energy (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size, double low_bin_fraction=0.125) |
| Low-frequency spectral energy per window. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::mean (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size) |
| Arithmetic mean per window. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::variance (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size, bool sample_variance=true) |
| Variance per window. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::std_dev (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size, bool sample_variance=true) |
| Standard deviation per window. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::skewness (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size) |
| Skewness (standardised third central moment) per window. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::kurtosis (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size) |
| Excess kurtosis (fourth central moment - 3) per window. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::median (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size) |
| Median per window via nth_element partial sort. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::percentile (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size, double percentile_value) |
| Arbitrary percentile per window via linear interpolation. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::entropy (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size, size_t num_bins=0) |
| Shannon entropy per window using Sturges-rule histogram. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::min (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size) |
| Minimum value per window. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::max (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size) |
| Maximum value per window. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::range (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size) |
| Value range (max - min) per window. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::sum (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size) |
| Sum per window. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::count (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size) |
| Sample count per window (as double for pipeline uniformity) | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::mad (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size) |
| Median absolute deviation per window. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::coefficient_of_variation (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size, bool sample_variance=true) |
| Coefficient of variation (std_dev / mean) per window. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::mode (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size) |
| Mode per window via tolerance-bucketed frequency count. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::mean_zscore (std::span< const double > data, size_t n_windows, uint32_t hop_size, uint32_t window_size, bool sample_variance=true) |
| Mean z-score per window. | |
| std::vector< size_t > | MayaFlux::Kinesis::Discrete::zero_crossing_positions (std::span< const double > data, double threshold=0.0) |
| Sample indices of zero crossings in the full span. | |
| std::vector< size_t > | MayaFlux::Kinesis::Discrete::peak_positions (std::span< const double > data, double threshold=0.0, size_t min_distance=1) |
| Sample indices of local peak maxima in the full span. | |
| std::vector< size_t > | MayaFlux::Kinesis::Discrete::onset_positions (std::span< const double > data, uint32_t window_size, uint32_t hop_size, double threshold=0.1) |
| Sample indices of onsets detected via spectral flux. | |
Discrete sequence analysis primitives for MayaFlux::Kinesis.
Pure numerical functions operating on contiguous double-precision spans. No MayaFlux type dependencies. All functions are domain-agnostic — the same primitives serve audio, visual, control, and any other sampled sequence.
All non-spectral, non-position functions are auto-vectorisable with -O2 -march=native. Spectral functions are not — they delegate to Eigen::FFT. Position-finding functions (zero crossings, peaks, onsets) produce sparse output and are inherently scalar.
Definition in file Analysis.hpp.