dasp_signal

Function from_interleaved_samples_iter

Source
pub fn from_interleaved_samples_iter<I, F>(
    samples: I,
) -> FromInterleavedSamplesIterator<I::IntoIter, F>
where I: IntoIterator, I::Item: Sample, F: Frame<Sample = I::Item>,
Expand description

Create a new Signal from the given Frame-yielding Iterator.

When the Iterator is exhausted, the new Signal will yield F::equilibrium.

ยงExample

use dasp_signal::{self as signal, Signal};

fn main() {
    let foo = [0, 1, 2, 3];
    let mut signal = signal::from_interleaved_samples_iter::<_, [i32; 2]>(foo.iter().cloned());
    assert_eq!(signal.next(), [0, 1]);
    assert_eq!(signal.next(), [2, 3]);
    assert_eq!(signal.next(), [0, 0]);

    let bar = [0, 1, 2];
    let mut signal = signal::from_interleaved_samples_iter::<_, [i32; 2]>(bar.iter().cloned());
    assert_eq!(signal.next(), [0, 1]);
    assert_eq!(signal.next(), [0, 0]);
}