[CM] set! samples

James Hearon j_hearon at hotmail.com
Wed Jun 20 10:26:51 PDT 2018

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.

From: cmdist-bounces at ccrma.Stanford.EDU <cmdist-bounces at ccrma.Stanford.EDU> on behalf of cmdist-request at ccrma.Stanford.EDU <cmdist-request at ccrma.Stanford.EDU>
Sent: Tuesday, June 19, 2018 7:00 PM
To: cmdist at ccrma.Stanford.EDU
Subject: Cmdist Digest, Vol 122, Issue 1

Send Cmdist mailing list submissions to
        cmdist at ccrma.stanford.edu

To subscribe or unsubscribe via the World Wide Web, visit
or, via email, send a message with subject or body 'help' to
        cmdist-request at ccrma.stanford.edu

You can reach the person managing the list at
        cmdist-owner at ccrma.stanford.edu

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 (bil at ccrma.Stanford.EDU)


Message: 1
Date: Tue, 19 Jun 2018 18:02:31 +0000
From: James Hearon <j_hearon at hotmail.com>
To: "cmdist at ccrma.Stanford.EDU" <cmdist at ccrma.Stanford.EDU>
Subject: [CM] set! samples
        <MWHPR1001MB208069F8BB2B140455F81911E5700 at MWHPR1001MB2080.namprd10.prod.outlook.com>

Content-Type: text/plain; charset="iso-8859-1"

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: bil at ccrma.Stanford.EDU
To: James Hearon <j_hearon at hotmail.com>
Cc: "cmdist at ccrma.Stanford.EDU" <cmdist at ccrma.Stanford.EDU>
Subject: Re: [CM] set! samples
Message-ID: <c89d9a491bd836c9b576a7585d44bcf8 at ccrma.stanford.edu>
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
Cmdist at ccrma.stanford.edu

End of Cmdist Digest, Vol 122, Issue 1

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://cm-mail.stanford.edu/mailman/private/cmdist/attachments/20180620/1559b74e/attachment.html>

More information about the Cmdist mailing list