|
MayaFlux 0.4.0
Digital-First Multimedia Processing Framework
|
Discrete taper (window) coefficient generation and in-place application 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 | |
| void | MayaFlux::Kinesis::Discrete::apply_blackman (std::span< double > data) noexcept |
| Apply a Blackman taper in-place without materialising coefficients. | |
| void | MayaFlux::Kinesis::Discrete::apply_hamming (std::span< double > data) noexcept |
| Apply a Hamming taper in-place without materialising coefficients. | |
| void | MayaFlux::Kinesis::Discrete::apply_hann (std::span< double > data) noexcept |
| Apply a Hann taper in-place without materialising coefficients. | |
| void | MayaFlux::Kinesis::Discrete::apply_taper (std::span< double > data, std::span< const double > taper) noexcept |
Multiply data element-wise by a precomputed taper. | |
| void | MayaFlux::Kinesis::Discrete::apply_trapezoid (std::span< double > data, size_t fade_len) noexcept |
| Apply a trapezoid taper in-place without materialising coefficients. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::blackman (size_t n) |
| Blackman taper coefficients. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::hamming (size_t n) |
| Hamming taper coefficients. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::hann (size_t n) |
| Hann (raised cosine) taper coefficients. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::rectangular (size_t n) |
| Rectangular (unity) taper coefficients. | |
| std::vector< double > | MayaFlux::Kinesis::Discrete::trapezoid (size_t n, size_t fade_len) |
| Trapezoid taper coefficients with configurable flat region. | |
Discrete taper (window) coefficient generation and in-place application for MayaFlux::Kinesis.
Pure numerical functions producing taper coefficient vectors and applying them in-place to contiguous double-precision spans. No MayaFlux type dependencies. Domain-agnostic.
Two usage patterns are supported:
All generation functions return a vector of length n. The single-sample edge case always returns { 1.0 }.
SIMD notes: apply_taper and apply_rectangular are auto-vectorisable under -O2 -march=native. Generation functions invoke std::cos and are scalar.
Definition in file Taper.hpp.