<br><br><div><span class="gmail_quote">On 5/31/07, <b class="gmail_sendername">Josh Lawrence</b> &lt;<a href="mailto:hardbop200@gmail.com">hardbop200@gmail.com</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Last night I sat down and was able to modify <a href="http://polyfony.ck">polyfony.ck</a> to use a<br>SawOsc instead of the Mandolin.</blockquote><div><br>Cool!<br><br>&nbsp;</div><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
&nbsp;&nbsp;My next step was to try to connect<br>that oscillator to a filter, but how do I do that?&nbsp;&nbsp;My thinking was<br>after I get done with defining my SawOsc parameters, I could just<br>chuck the oscillator to the filter, like so?
<br><br>s =&gt; moog;<br><br>(s is my SawOsc, and moog is Moog.)</blockquote><div><br>Ah, yes. &quot;moog&quot; in this case refers to a emulation (a simple but fun one) of a Moog synth, not to the Moog filter (think Minimoog 
v.s. Moogerfooger). What you are looking for would run something like this;<br><br>SawOsc osc =&gt; LPF filt =&gt; ADSR env =&gt; dac;<br><br>That would be the basic layout of a traditional single oscilator synth. You could elaborate on that, for example by adding a second oscilator and a filter modulation envelope if you&#39;d like to get more fancy.
<br>&nbsp;<br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><br>Does anyone have any examples of a more complete subtractive<br>synthesizer that I can model mine after?
</blockquote><div><br>How about starting with the layout above? You can look up the Ugens used in the manual and see how far those get you.<br><br>&nbsp;</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Final question:&nbsp;&nbsp;Is monophonic operation with glide out of the<br>question with ChucK?</blockquote><div><br>No, not at all, that&#39;s quite possible and indeed would likely be more simple then polyphonic operation. The glide bit would be the hardest. How about this;
<br>-----------------------<br>//warning, unchecked code, might contain typos<br><br>//example signal<br>SawOsc s =&gt; dac;<br><br>//modulation source<br>//you might want to look up &quot;blackhole&quot; to see what it does,
<br>//blackhole is quite usefull when using modulation.<br>Envelope slide =&gt; blackhole;<br><br>//this will be a 303-style slide that takes a second to reach any given target<br>second =&gt; slide.duration;<br><br>//set initial frequency
<br>330 =&gt;&nbsp; s.freq;<br>//making sure the modulation source fits this<br></div>330 =&gt; slide.value;<br><br>//let it sound for a bit<br>second =&gt; now;<br><br>//the actual slide starts here.<br>
440 =&gt; slide.target;<br><br>//we run this untill the slide has reached it&#39;s goal<br>while(slide.value() != slide.target)<br>&nbsp;&nbsp;&nbsp; {<br>&nbsp;&nbsp;&nbsp; //this is where the actual modulation occurs<br>&nbsp;&nbsp;&nbsp; slide.value() =&gt; s.freq
;<br><br>&nbsp;&nbsp;&nbsp; //this represents the &quot;controll rate&quot;<br>&nbsp;&nbsp;&nbsp; //shorter values produce a smoother glide at a higher cpu cost<br>&nbsp;&nbsp;&nbsp; 10::ms =&gt; now;<br>&nbsp;&nbsp;&nbsp; }<br><br>//let the new frequency sound for a bit too<br>second =&gt; now;
<br>----------------------------<br>Hope that gets you started?<br><br>Kas.<br></div>