[CM] Snd: removing a channel
Bill Schottstaedt
bil at ccrma.Stanford.EDU
Thu Apr 1 03:07:33 PST 2004
One way to extract a group of channels and save them as a separate
WAVE sound file is:
(define* (extract-channels #:rest chans)
;; extract a list of channels from the current sound and save as test.snd: (extract-channels 0 2)
(let ((snd (or (selected-sound) (car (sounds)))))
(if (sound? snd)
(begin
(for-each
(lambda (chan)
(set! (selection-member? snd chan) #t)
(set! (selection-position snd chan) 0)
(set! (selection-frames snd chan) (frames snd chan)))
chans)
(save-selection "test.snd" :header-type mus-riff)))))
To have this affect the current sound "in place", use the current
sound's filename in place of "test.snd", then call update-sound.
There are a lot more ways to do this sort of thing.
More information about the Cmdist
mailing list