wav-dwt 0.2.1

An experimental implementation of the A Trous Wavelet Decomposition algorithms for audio instead of images
Documentation
use crate::layer::WaveletLayer;
use convolve_nd::exports::ndarray::Array1;

pub trait RecomposableWaveletLayers: Iterator<Item = WaveletLayer> {
    fn recompose_into_data(self, length: usize) -> Array1<f32>
    where
        Self: Sized,
    {
        let mut result = Array1::<f32>::zeros(length);

        for layer in self {
            result += &layer.buffer.data;
        }

        result
    }
}

impl<T> RecomposableWaveletLayers for T where T: Iterator<Item = WaveletLayer> {}