10#include <memory_resource>
11#include <nk/value/value.hpp>
43std::tuple<Value, Value, Value>
48 std::pmr::memory_resource * mr =
nullptr);
75 std::size_t fftLength,
76 const std::string & range,
77 std::pmr::memory_resource * mr =
nullptr);
100 std::size_t fftLength,
101 const std::string & range,
102 std::pmr::memory_resource * mr =
nullptr);
121std::tuple<Value, Value, Value>
123 std::size_t noverlap,
124 const std::string & method,
125 std::pmr::memory_resource * mr =
nullptr);
Core MATLAB-compatible multidimensional array and scalar value type.
Value istft(const Value &S, const Value &window, std::size_t overlap, std::size_t fftLength, const std::string &range, std::pmr::memory_resource *mr=nullptr)
Inverse STFT via overlap-add.
Value stft(const Value &x, const Value &window, std::size_t overlap, std::size_t fftLength, const std::string &range, std::pmr::memory_resource *mr=nullptr)
Full two-sided / centred / one-sided STFT.
std::tuple< Value, Value, Value > spectrogram(const Value &x, const Value &window, size_t noverlap, size_t nfft, std::pmr::memory_resource *mr=nullptr)
Short-time Fourier transform with explicit (S, F, T) outputs.
std::tuple< Value, Value, Value > iscola(const Value &window, std::size_t noverlap, const std::string &method, std::pmr::memory_resource *mr=nullptr)
Constant OverLap-Add (COLA) compliance check (tf = iscola(window, noverlap[, method])).