Hi, Thank you. I think I get it now. I was thinking "i" was smarter about values while going thru the do loop, or was was keeping track somehow of all values, not just the increment. But it seems to only know about values of the increment. I think I can fix it now. Regards, Jim
________________________________ From: [email protected] <[email protected]> on behalf of [email protected] <[email protected]> Sent: Tuesday, June 19, 2018 7:00 PM To: [email protected] Subject: Cmdist Digest, Vol 122, Issue 1 Send Cmdist mailing list submissions to [email protected] To subscribe or unsubscribe via the World Wide Web, visit https://cm-mail.stanford.edu/mailman/listinfo/cmdist or, via email, send a message with subject or body 'help' to [email protected] You can reach the person managing the list at [email protected] When replying, please edit your Subject line so it is more specific than "Re: Contents of Cmdist digest..." Today's Topics: 1. set! samples (James Hearon) 2. Re: set! samples ([email protected]) ---------------------------------------------------------------------- Message: 1 Date: Tue, 19 Jun 2018 18:02:31 +0000 From: James Hearon <[email protected]> To: "[email protected]" <[email protected]> Subject: [CM] set! samples Message-ID: <mwhpr1001mb208069f8bb2b140455f81911e5...@mwhpr1001mb2080.namprd10.prod.outlook.com> Content-Type: text/plain; charset="iso-8859-1" Hi, I get a crash that I cannot seem to understand with the following code. In the do loop when I set the test to (= i 40400) I get a squarish-wave in the editor; but when I set it to 40500 or above I get an endless loop and a crash. I was trying to create a 2 sec. test.snd, then write the samples to the editor to fill out the 2 sec. or 44100 samples if sr is 22050, but I must be doing something wrong. (set! *clm-srate* 22050) (let* ((dur (* *clm-srate* 2)) (ind (new-sound "test.snd" 1 *clm-srate* mus-ldouble mus-riff :size dur)) (v1 (make-float-vector 100 .75)) (v2 (make-float-vector 98 -.5)) ) (do ((i 0 (+ i 200))) ((= i 40400)) ;xxx 40400 works, but 40500 crashes (set! (samples i (+ i 100)) v1) (set! (samples (+ i 101) (+ i 199)) v2) ) ) -------------- next part -------------- An HTML attachment was scrubbed... URL: <https://cm-mail.stanford.edu/mailman/private/cmdist/attachments/20180619/9abfc7c8/attachment-0001.html> ------------------------------ Message: 2 Date: Tue, 19 Jun 2018 11:21:30 -0700 From: [email protected] To: James Hearon <[email protected]> Cc: "[email protected]" <[email protected]> Subject: Re: [CM] set! samples Message-ID: <[email protected]> Content-Type: text/plain; charset=US-ASCII; format=flowed At first glance, "i" never equals 40500 -- you're stepping by 200. Use (>= i 40500) or (= i 40600). Since the end test is never true, you probably run out of memory eventually. ------------------------------ _______________________________________________ Cmdist mailing list [email protected] https://cm-mail.stanford.edu/mailman/listinfo/cmdist End of Cmdist Digest, Vol 122, Issue 1 **************************************
_______________________________________________ Cmdist mailing list [email protected] https://cm-mail.stanford.edu/mailman/listinfo/cmdist
