pub fn interleave<T: Float>(channels: &[Vec<T>]) -> Vec<T>Expand description
Interleave multiple channels into a single buffer.
Converts separate channels (vec![vec![L,L,L,...], vec![R,R,R,...]])
into interleaved format (e.g., [L,R,L,R,L,R,...] for stereo).
§Arguments
channels- Vector of audio channels
§Panics
Panics if channels is empty or if channels have different lengths.
§Example
use stft_rs::interleave;
let left = vec![1.0, 3.0, 5.0];
let right = vec![2.0, 4.0, 6.0];
let interleaved = interleave(&[left, right]);
assert_eq!(interleaved, vec![1.0, 2.0, 3.0, 4.0, 5.0, 6.0]);