<div dir="ltr">hey Casper thanks! I think the issue may also be in the statement<div><br></div><div><blockquote type="cite"><div><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><span style="color:rgb(0,0,255)">if</span><span style="color:rgb(96,144,16)"> </span>(i%iMax<span style="color:rgb(96,144,16)"> </span>&gt;<span style="color:rgb(96,144,16)"> </span>jCount<span style="color:rgb(96,144,16)"> </span>)<span style="color:rgb(96,144,16)"> </span><span style="color:rgb(212,128,16)">0</span>.<span style="color:rgb(212,128,16)">0</span><span style="color:rgb(96,144,16)"> </span>=&gt;s.gain;</div></div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><br></div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco">which is not the same as </div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><br></div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><span style="color:rgb(0,0,255)">if</span> (<span style="color:rgb(0,0,255)">now</span>%iMax &gt; jCount ) <span style="color:rgb(212,128,16)">0</span>.<span style="color:rgb(212,128,16)">0</span> =&gt;s.gain;<br></div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><br></div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco">because I don&#39;t think &quot;now&quot; increments at the same rate as i (I wonder if now increments one sample at a time, rather than .1 ms at a time, then they become equivalent, thus your fix.). Anyway, not sure--haveto try this at home.</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><br></div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco">Cheers,</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><br></div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco">Charlie</div></div></div></div></div></div></div></div></blockquote></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jan 31, 2019 at 12:00 PM &lt;<a href="mailto:chuck-users-request@lists.cs.princeton.edu">chuck-users-request@lists.cs.princeton.edu</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Send chuck-users mailing list submissions to<br>
        <a href="mailto:chuck-users@lists.cs.princeton.edu" target="_blank">chuck-users@lists.cs.princeton.edu</a><br>
<br>
To subscribe or unsubscribe via the World Wide Web, visit<br>
        <a href="https://lists.cs.princeton.edu/mailman/listinfo/chuck-users" rel="noreferrer" target="_blank">https://lists.cs.princeton.edu/mailman/listinfo/chuck-users</a><br>
or, via email, send a message with subject or body &#39;help&#39; to<br>
        <a href="mailto:chuck-users-request@lists.cs.princeton.edu" target="_blank">chuck-users-request@lists.cs.princeton.edu</a><br>
<br>
You can reach the person managing the list at<br>
        <a href="mailto:chuck-users-owner@lists.cs.princeton.edu" target="_blank">chuck-users-owner@lists.cs.princeton.edu</a><br>
<br>
When replying, please edit your Subject line so it is more specific<br>
than &quot;Re: Contents of chuck-users digest...&quot;<br>
Today&#39;s Topics:<br>
<br>
   1. Re: two similar shreds with different results (Casper Schipper)<br>
<br><br><br>---------- Forwarded message ----------<br>From: Casper Schipper &lt;<a href="mailto:casper.schipper@gmail.com" target="_blank">casper.schipper@gmail.com</a>&gt;<br>To: ChucK Users Mailing List &lt;<a href="mailto:chuck-users@lists.cs.princeton.edu" target="_blank">chuck-users@lists.cs.princeton.edu</a>&gt;<br>Cc: <br>Bcc: <br>Date: Thu, 31 Jan 2019 09:31:01 +0100<br>Subject: Re: [chuck-users] two similar shreds with different results<br><div style="overflow-wrap: break-word;"><div dir="auto" style="overflow-wrap: break-word;">Hi Charlie,<div><br></div><div><div>I think I found it: .1::ms is not the same as 1::samp</div></div><div>You do in both scripts .1 ::ms =&gt; now, but in the second variant, this means now will have increased by 4.1 samples, instead of 1 unit (depending on your samplerate).</div><div>I could get the same sound from both scripts by changing .1::ms =&gt; now to samp =&gt; now;</div><div><br></div><div>Best,</div><div>Casper<br><div><br><blockquote type="cite"><div>On 27 Jan 2019, at 14:58, Charlie &lt;<a href="mailto:taos.points@gmail.com" target="_blank">taos.points@gmail.com</a>&gt; wrote:</div><br class="gmail-m_-4376994146981749008Apple-interchange-newline"><div><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr">Hey folks, I&#39;m puzzled why these two shreds don&#39;t make the same sound. I created a simple bit crusher using an integer as an index and then using time as an index; I thought these were equivalent but they aren&#39;t. I wonder if this is because the integer increments at a  different rate than the sampling rate? Any guidance on this gratefully received! Thanks,<div><br></div><div>Charlie </div><div><br></div><div>First shred:</div><div>//---------------------------------------------</div><div><br></div><div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco;color:rgb(162,0,236)">SinOsc<span> s =&gt; </span><span style="color:rgb(0,0,255)">dac</span><span>;</span></div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco;min-height:17px"><br></div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><span style="color:rgb(212,128,16)">110</span> =&gt; s.freq;</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco;min-height:17px"><br></div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><span style="color:rgb(212,128,16)">0</span> =&gt; <span style="color:rgb(0,0,255)">int</span> i;</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><span style="color:rgb(212,128,16)">250</span> =&gt; <span style="color:rgb(0,0,255)">int</span> iMax;</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><span style="color:rgb(212,128,16)">0</span> =&gt; <span style="color:rgb(0,0,255)">int</span> jCount;</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco;min-height:17px"><br></div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco;color:rgb(0,0,255)">while<span> (</span>true<span>) {</span></div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><span class="gmail-m_-4376994146981749008gmail-Apple-tab-span" style="white-space:pre-wrap">        </span>i++;</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco;min-height:17px"><span class="gmail-m_-4376994146981749008gmail-Apple-tab-span" style="white-space:pre-wrap">        </span><br class="gmail-m_-4376994146981749008webkit-block-placeholder"></div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco;color:rgb(96,144,16)">//<span class="gmail-m_-4376994146981749008gmail-Apple-tab-span" style="white-space:pre-wrap">        </span>if (i%130 == 0 || i%201 ==0 || i% 737 == 0) 0 =&gt;s.gain;</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><span style="color:rgb(0,0,255)">    if</span><span style="color:rgb(96,144,16)"> </span>(i%iMax<span style="color:rgb(96,144,16)"> </span>&gt;<span style="color:rgb(96,144,16)"> </span>jCount<span style="color:rgb(96,144,16)"> </span>)<span style="color:rgb(96,144,16)"> </span><span style="color:rgb(212,128,16)">0</span>.<span style="color:rgb(212,128,16)">0</span><span style="color:rgb(96,144,16)"> </span>=&gt;s.gain;</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><span class="gmail-m_-4376994146981749008gmail-Apple-tab-span" style="white-space:pre-wrap">        </span>jCount++;</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><span class="gmail-m_-4376994146981749008gmail-Apple-tab-span" style="white-space:pre-wrap">        </span><span style="color:rgb(0,0,255)">if</span> (jCount &gt; iMax) <span style="color:rgb(212,128,16)">0</span> =&gt; jCount;</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco;color:rgb(96,144,16)">//<span class="gmail-m_-4376994146981749008gmail-Apple-tab-span" style="white-space:pre-wrap">        </span>1::samp =&gt; now;</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco">    .<span style="color:rgb(212,128,16)">1</span>::<span style="color:rgb(0,0,255)">ms</span> =&gt; <span style="color:rgb(0,0,255)">now</span>;</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><span class="gmail-m_-4376994146981749008gmail-Apple-tab-span" style="white-space:pre-wrap">        </span><span style="color:rgb(212,128,16)">1</span> =&gt; s.gain;</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco;min-height:17px"><br></div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco">}</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><br></div><div>//---------------------------------------------</div><div><br></div><div>second shred:</div><div><br></div><div><div>//---------------------------------------------</div></div><div><br></div><div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco;color:rgb(162,0,236)">SinOsc<span> s =&gt; </span><span style="color:rgb(0,0,255)">dac</span><span>;</span></div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco;min-height:17px"><br></div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><span style="color:rgb(212,128,16)">110</span> =&gt; s.freq;</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco;min-height:17px"><br></div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><span style="color:rgb(212,128,16)">0</span>::<span style="color:rgb(0,0,255)">samp</span> =&gt; <span style="color:rgb(0,0,255)">dur</span> jMin;</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><span style="color:rgb(212,128,16)">250</span>::<span style="color:rgb(0,0,255)">samp</span> =&gt; <span style="color:rgb(0,0,255)">dur</span> iMax;</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><span style="color:rgb(212,128,16)">0</span>::<span style="color:rgb(0,0,255)">samp</span> =&gt; <span style="color:rgb(0,0,255)">dur</span> jCount;</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><span style="color:rgb(212,128,16)">1</span>::<span style="color:rgb(0,0,255)">samp</span> =&gt; <span style="color:rgb(0,0,255)">dur</span> jDelta;</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco;min-height:17px"><br></div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco;color:rgb(0,0,255)">while<span> (</span>true<span>) {</span></div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco;color:rgb(96,144,16);min-height:17px"><br></div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><span class="gmail-m_-4376994146981749008gmail-Apple-tab-span" style="white-space:pre-wrap">        </span><span style="color:rgb(0,0,255)">if</span> (<span style="color:rgb(0,0,255)">now</span>%iMax &gt; jCount ) <span style="color:rgb(212,128,16)">0</span>.<span style="color:rgb(212,128,16)">0</span> =&gt;s.gain;</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><span class="gmail-m_-4376994146981749008gmail-Apple-tab-span" style="white-space:pre-wrap">        </span>jCount+jDelta =&gt; jCount;</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><span class="gmail-m_-4376994146981749008gmail-Apple-tab-span" style="white-space:pre-wrap">        </span><span style="color:rgb(0,0,255)">if</span> (jCount &gt; iMax) jMin =&gt; jCount;</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><span class="gmail-m_-4376994146981749008gmail-Apple-tab-span" style="white-space:pre-wrap">        </span>.<span style="color:rgb(212,128,16)">1</span>::<span style="color:rgb(0,0,255)">ms</span> =&gt; <span style="color:rgb(0,0,255)">now</span>;</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><span class="gmail-m_-4376994146981749008gmail-Apple-tab-span" style="white-space:pre-wrap">        </span><span style="color:rgb(212,128,16)">1</span> =&gt; s.gain;</div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco;min-height:17px"><span class="gmail-m_-4376994146981749008gmail-Apple-tab-span" style="white-space:pre-wrap">        </span><br class="gmail-m_-4376994146981749008webkit-block-placeholder"></div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco">}</div></div><div><br></div><div><br></div><div><div>//---------------------------------------------</div></div><div><br></div><div style="margin:0px;font-stretch:normal;font-size:13px;line-height:normal;font-family:Monaco"><br></div></div></div></div></div></div></div></div>
_______________________________________________<br>chuck-users mailing list<br><a href="mailto:chuck-users@lists.cs.princeton.edu" target="_blank">chuck-users@lists.cs.princeton.edu</a><br><a href="https://lists.cs.princeton.edu/mailman/listinfo/chuck-users" target="_blank">https://lists.cs.princeton.edu/mailman/listinfo/chuck-users</a><br></div></blockquote></div><br></div></div></div>_______________________________________________<br>
chuck-users mailing list<br>
<a href="mailto:chuck-users@lists.cs.princeton.edu" target="_blank">chuck-users@lists.cs.princeton.edu</a><br>
<a href="https://lists.cs.princeton.edu/mailman/listinfo/chuck-users" rel="noreferrer" target="_blank">https://lists.cs.princeton.edu/mailman/listinfo/chuck-users</a><br>
</blockquote></div>