;This function separates even and odd elements of a vector.
(bind-func LR_split:[void,float*,float*,float*,i64]*
(lambda (frame:float* left:float* right:float* buffer_size:i64)
(let ((n:i64 0))
(dotimes (n (/ buffer_size 2))
(pset! left n (pref frame (* 2 n)))
(pset! right n (pref frame (+ (* 2 n) 1))))
void)))