[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[sc-dev] SF.net SVN: supercollider: [6892] trunk



Revision: 6892
          http://svn.sourceforge.net/supercollider/?rev=6892&view=rev
Author:   joshpar
Date:     2008-01-07 15:01:11 -0800 (Mon, 07 Jan 2008)

Log Message:
-----------
make 2 channels grain UGens pan like Pan2

Modified Paths:
--------------
    trunk/Source/plugins/GrainUGens.cpp
    trunk/build/Help/UGens/GranularSynthesis/GrainBuf.html
    trunk/build/Help/UGens/GranularSynthesis/GrainFM.html
    trunk/build/Help/UGens/GranularSynthesis/GrainIn.html
    trunk/build/Help/UGens/GranularSynthesis/GrainSin.html

Modified: trunk/Source/plugins/GrainUGens.cpp
===================================================================
--- trunk/Source/plugins/GrainUGens.cpp	2008-01-07 21:45:29 UTC (rev 6891)
+++ trunk/Source/plugins/GrainUGens.cpp	2008-01-07 23:01:11 UTC (rev 6892)
@@ -386,6 +386,7 @@
 	float panangle, pan1, pan2; \
 	float *out1, *out2; \
 	if (numOutputs > 1) { \
+		if (numOutputs == 2) pan = pan * 0.5; \
 		pan = sc_wrap(pan * 0.5f, 0.f, 1.f); \
 		float cpan = numOutputs * pan + 0.5; \
 		float ipan = floor(cpan); \

Modified: trunk/build/Help/UGens/GranularSynthesis/GrainBuf.html
===================================================================
--- trunk/build/Help/UGens/GranularSynthesis/GrainBuf.html	2008-01-07 21:45:29 UTC (rev 6891)
+++ trunk/build/Help/UGens/GranularSynthesis/GrainBuf.html	2008-01-07 23:01:11 UTC (rev 6892)
@@ -12,15 +12,15 @@
 p.p3 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica}
 p.p4 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; min-height: 12.0px}
 p.p5 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco}
-p.p6 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #606060}
-p.p7 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #961e1e}
-p.p8 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #782727}
-span.s1 {color: #001db9}
+p.p6 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #4d4d4d}
+p.p7 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #821017}
+p.p8 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #631a1e}
+span.s1 {color: #0000aa}
 span.s2 {color: #000000}
-span.s3 {color: #0023b6}
-span.s4 {color: #426f0e}
-span.s5 {color: #0428b3}
-span.s6 {color: #556b17}
+span.s3 {color: #000aa7}
+span.s4 {color: #345e0d}
+span.s5 {color: #0011a3}
+span.s6 {color: #445a13}
 span.Apple-tab-span {white-space:pre}
 </style>
 </head>
@@ -38,7 +38,9 @@
 <p class="p3"><b><span class="Apple-tab-span">	</span>pos</b> - the playback position for the grain to start with (0 is beginning, 1 is end of file)</p>
 <p class="p3"><b><span class="Apple-tab-span">	</span>interp -<i> </i></b>the interpolation method used for pitchshifting grains. 1 = no interpolation. 2 = linear.<span class="Apple-converted-space"> </span></p>
 <p class="p3"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span>4 = cubic interpolation (more computationally intensive).</p>
-<p class="p3"><span class="Apple-tab-span">	</span><b>pan</b> -<span class="Apple-converted-space">  </span>a value from -1 to 1. Determines where to pan the output in the same manner as PanAz.<span class="Apple-tab-span">	</span></p>
+<p class="p3"><span class="Apple-tab-span">	</span><b>pan</b> -<span class="Apple-converted-space">  </span>Determines where to pan the output. If numChannels = 1, no panning is done.<span class="Apple-converted-space"> </span></p>
+<p class="p3"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span>If numChannels = 2, panning is similar to Pan2.</p>
+<p class="p3"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span>if numChannels &gt; 2, pannins is the same as PanAz.<span class="Apple-tab-span">	</span></p>
 <p class="p3"><b><span class="Apple-tab-span">	</span>envbufnum</b> - the buffer number containing a singal to use for the grain envelope. -1 uses a built-in<span class="Apple-converted-space"> </span></p>
 <p class="p3"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span>Hanning envelope.</p>
 <p class="p2"><br></p>

Modified: trunk/build/Help/UGens/GranularSynthesis/GrainFM.html
===================================================================
--- trunk/build/Help/UGens/GranularSynthesis/GrainFM.html	2008-01-07 21:45:29 UTC (rev 6891)
+++ trunk/build/Help/UGens/GranularSynthesis/GrainFM.html	2008-01-07 23:01:11 UTC (rev 6892)
@@ -12,14 +12,14 @@
 p.p3 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica}
 p.p4 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; min-height: 12.0px}
 p.p5 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco}
-p.p6 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #961e1e}
-p.p7 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #782727}
-p.p8 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #556b17}
-span.s1 {color: #001db9}
-span.s2 {color: #426f0e}
+p.p6 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #821017}
+p.p7 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #631a1e}
+p.p8 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #445a13}
+span.s1 {color: #0000aa}
+span.s2 {color: #345e0d}
 span.s3 {color: #000000}
-span.s4 {color: #0428b3}
-span.s5 {color: #556b17}
+span.s4 {color: #0011a3}
+span.s5 {color: #445a13}
 span.Apple-tab-span {white-space:pre}
 </style>
 </head>
@@ -36,7 +36,9 @@
 <p class="p3"><span class="Apple-tab-span">	</span><b>carfreq</b> - the carrier freq of the grain generators internal oscillator</p>
 <p class="p3"><span class="Apple-tab-span">	</span><b>modfreq</b> - the modulating freq of the grain generators internal oscillator</p>
 <p class="p3"><span class="Apple-tab-span">	</span><b>index - </b>the index of modulation</p>
-<p class="p3"><span class="Apple-tab-span">	</span><b>pan</b> -<span class="Apple-converted-space">  </span>a value from -1 to 1. Determines where to pan the output in the same manner as PanAz.<span class="Apple-tab-span">	</span></p>
+<p class="p3"><span class="Apple-tab-span">	</span><b>pan</b> -<span class="Apple-converted-space">  </span>Determines where to pan the output. If numChannels = 1, no panning is done.<span class="Apple-converted-space"> </span></p>
+<p class="p3"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span>If numChannels = 2, panning is similar to Pan2.</p>
+<p class="p3"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span>if numChannels &gt; 2, pannins is the same as PanAz.<span class="Apple-tab-span">	</span></p>
 <p class="p3"><b><span class="Apple-tab-span">	</span>envbufnum</b> - the buffer number containing a singal to use for the grain envelope. -1 uses a built-in<span class="Apple-converted-space"> </span></p>
 <p class="p3"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span>Hanning envelope.</p>
 <p class="p2"><br></p>

Modified: trunk/build/Help/UGens/GranularSynthesis/GrainIn.html
===================================================================
--- trunk/build/Help/UGens/GranularSynthesis/GrainIn.html	2008-01-07 21:45:29 UTC (rev 6891)
+++ trunk/build/Help/UGens/GranularSynthesis/GrainIn.html	2008-01-07 23:01:11 UTC (rev 6892)
@@ -12,16 +12,14 @@
 p.p3 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica}
 p.p4 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; min-height: 12.0px}
 p.p5 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco}
-p.p6 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #000000}
-p.p7 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #bf0000}
-p.p8 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #000000; min-height: 12.0px}
-p.p9 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #782727}
-p.p10 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #556b17}
-span.s1 {color: #0000bf}
-span.s2 {color: #007300}
+p.p6 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #af0005}
+p.p7 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #631a1e}
+p.p8 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #445a13}
+span.s1 {color: #0000b1}
+span.s2 {color: #0d6301}
 span.s3 {color: #000000}
-span.s4 {color: #0428b3}
-span.s5 {color: #556b17}
+span.s4 {color: #0011a3}
+span.s5 {color: #445a13}
 span.Apple-tab-span {white-space:pre}
 </style>
 </head>
@@ -35,7 +33,9 @@
 <p class="p3"><span class="Apple-tab-span">	</span>The following args are polled at grain creation time</p>
 <p class="p3"><span class="Apple-tab-span">	</span><b>dur</b> - size of the grain.</p>
 <p class="p3"><span class="Apple-tab-span">	</span><b>in</b> - the input to granulate</p>
-<p class="p3"><span class="Apple-tab-span">	</span><b>pan</b> -<span class="Apple-converted-space">  </span>a value from -1 to 1. Determines where to pan the output in the same manner as PanAz.<span class="Apple-tab-span">	</span></p>
+<p class="p3"><span class="Apple-tab-span">	</span><b>pan</b> -<span class="Apple-converted-space">  </span>Determines where to pan the output. If numChannels = 1, no panning is done.<span class="Apple-converted-space"> </span></p>
+<p class="p3"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span>If numChannels = 2, panning is similar to Pan2.</p>
+<p class="p3"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span>if numChannels &gt; 2, pannins is the same as PanAz.<span class="Apple-tab-span">	</span></p>
 <p class="p3"><b><span class="Apple-tab-span">	</span>envbufnum</b> - the buffer number containing a singal to use for the grain envelope. -1 uses a built-in<span class="Apple-converted-space"> </span></p>
 <p class="p3"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span>Hanning envelope.</p>
 <p class="p2"><br></p>
@@ -45,30 +45,30 @@
 <p class="p5">s.boot;</p>
 <p class="p4"><br></p>
 <p class="p5">(</p>
-<p class="p6"><span class="s1">var</span> winenv;</p>
-<p class="p7">// a custom envelope<span class="Apple-converted-space"> </span></p>
-<p class="p6">winenv = <span class="s1">Env</span>([0, 1, 0], [0.5, 0.5], [8, -8]);</p>
-<p class="p6">z = <span class="s1">Buffer</span>.sendCollection(s, winenv.discretize, 1);</p>
-<p class="p8"><br></p>
-<p class="p6"><span class="s1">SynthDef</span>(<span class="s2">\in_grain_test</span>, {<span class="s1">arg</span> gate = 1, amp = 1, envbuf;</p>
-<p class="p6"><span class="Apple-tab-span">	</span><span class="s1">var</span> pan, env;</p>
-<p class="p7"><span class="s3"><span class="Apple-tab-span">	</span></span>// use mouse x to control panning</p>
-<p class="p6"><span class="Apple-tab-span">	</span>pan = <span class="s1">MouseX</span>.kr(-1, 1);</p>
-<p class="p6"><span class="Apple-tab-span">	</span>env = <span class="s1">EnvGen</span>.kr(</p>
-<p class="p6"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span><span class="s1">Env</span>([0, 1, 0], [1, 1], <span class="s2">\sin</span>, 1),</p>
-<p class="p6"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span>gate,</p>
-<p class="p6"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span>levelScale: amp,</p>
-<p class="p6"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span>doneAction: 2);</p>
-<p class="p6"><span class="Apple-tab-span">	</span><span class="s1">Out</span>.ar(0,</p>
-<p class="p6"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span><span class="s1">GrainIn</span>.ar(2, <span class="s1">Impulse</span>.kr(10), 0.1, <span class="s1">PinkNoise</span>.ar, pan, envbuf) * env)</p>
-<p class="p6"><span class="Apple-tab-span">	</span>}).send(s);</p>
-<p class="p8"><br></p>
+<p class="p5"><span class="s1">var</span> winenv;</p>
+<p class="p6">// a custom envelope<span class="Apple-converted-space"> </span></p>
+<p class="p5">winenv = <span class="s1">Env</span>([0, 1, 0], [0.5, 0.5], [8, -8]);</p>
+<p class="p5">z = <span class="s1">Buffer</span>.sendCollection(s, winenv.discretize, 1);</p>
+<p class="p4"><br></p>
+<p class="p5"><span class="s1">SynthDef</span>(<span class="s2">\in_grain_test</span>, {<span class="s1">arg</span> gate = 1, amp = 1, envbuf;</p>
+<p class="p5"><span class="Apple-tab-span">	</span><span class="s1">var</span> pan, env;</p>
+<p class="p6"><span class="s3"><span class="Apple-tab-span">	</span></span>// use mouse x to control panning</p>
+<p class="p5"><span class="Apple-tab-span">	</span>pan = <span class="s1">MouseX</span>.kr(-1, 1);</p>
+<p class="p5"><span class="Apple-tab-span">	</span>env = <span class="s1">EnvGen</span>.kr(</p>
+<p class="p5"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span><span class="s1">Env</span>([0, 1, 0], [1, 1], <span class="s2">\sin</span>, 1),</p>
+<p class="p5"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span>gate,</p>
+<p class="p5"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span>levelScale: amp,</p>
+<p class="p5"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span>doneAction: 2);</p>
+<p class="p5"><span class="Apple-tab-span">	</span><span class="s1">Out</span>.ar(0,</p>
+<p class="p5"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span><span class="s1">GrainIn</span>.ar(2, <span class="s1">Impulse</span>.kr(10), 0.1, <span class="s1">PinkNoise</span>.ar, pan, envbuf) * env)</p>
+<p class="p5"><span class="Apple-tab-span">	</span>}).send(s);</p>
+<p class="p4"><br></p>
 <p class="p5">)</p>
 <p class="p4"><br></p>
-<p class="p9">// use built-in env</p>
-<p class="p10"><span class="s3">x = </span><span class="s4">Synth</span><span class="s3">(</span>\in_grain_test<span class="s3">, [</span>\envbuf<span class="s3">, -1])</span></p>
+<p class="p7">// use built-in env</p>
+<p class="p8"><span class="s3">x = </span><span class="s4">Synth</span><span class="s3">(</span>\in_grain_test<span class="s3">, [</span>\envbuf<span class="s3">, -1])</span></p>
 <p class="p4"><br></p>
-<p class="p9">// switch to the custom env</p>
+<p class="p7">// switch to the custom env</p>
 <p class="p5">x.set([<span class="s5">\envbuf</span>, z])</p>
 <p class="p5">x.set([<span class="s5">\envbuf</span>, -1]);</p>
 <p class="p4"><br></p>

Modified: trunk/build/Help/UGens/GranularSynthesis/GrainSin.html
===================================================================
--- trunk/build/Help/UGens/GranularSynthesis/GrainSin.html	2008-01-07 21:45:29 UTC (rev 6891)
+++ trunk/build/Help/UGens/GranularSynthesis/GrainSin.html	2008-01-07 23:01:11 UTC (rev 6892)
@@ -12,14 +12,14 @@
 p.p3 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica}
 p.p4 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; min-height: 12.0px}
 p.p5 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco}
-p.p6 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #961e1e}
-p.p7 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #782727}
-p.p8 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #556b17}
-span.s1 {color: #001db9}
-span.s2 {color: #426f0e}
+p.p6 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #6d0313}
+p.p7 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #4f1117}
+p.p8 {margin: 0.0px 0.0px 0.0px 0.0px; font: 9.0px Monaco; color: #354910}
+span.s1 {color: #000099}
+span.s2 {color: #294d0c}
 span.s3 {color: #000000}
-span.s4 {color: #0428b3}
-span.s5 {color: #556b17}
+span.s4 {color: #000092}
+span.s5 {color: #354910}
 span.Apple-tab-span {white-space:pre}
 </style>
 </head>
@@ -33,7 +33,9 @@
 <p class="p3"><span class="Apple-tab-span">	</span>The following args are polled at grain creation time</p>
 <p class="p3"><span class="Apple-tab-span">	</span><b>dur</b> - size of the grain.</p>
 <p class="p3"><span class="Apple-tab-span">	</span><b>freq</b> - the input to granulate</p>
-<p class="p3"><span class="Apple-tab-span">	</span><b>pan</b> -<span class="Apple-converted-space">  </span>a value from -1 to 1. Determines where to pan the output in the same manner as PanAz.<span class="Apple-tab-span">	</span></p>
+<p class="p3"><span class="Apple-tab-span">	</span><b>pan</b> -<span class="Apple-converted-space">  </span>Determines where to pan the output. If numChannels = 1, no panning is done.<span class="Apple-converted-space"> </span></p>
+<p class="p3"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span>If numChannels = 2, panning is similar to Pan2.</p>
+<p class="p3"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span>if numChannels &gt; 2, pannins is the same as PanAz.<span class="Apple-tab-span">	</span></p>
 <p class="p3"><b><span class="Apple-tab-span">	</span>envbufnum</b> - the buffer number containing a singal to use for the grain envelope. -1 uses a built-in<span class="Apple-converted-space"> </span></p>
 <p class="p3"><span class="Apple-tab-span">	</span><span class="Apple-tab-span">	</span>Hanning envelope.</p>
 <p class="p2"><br></p>
@@ -51,7 +53,7 @@
 <p class="p5"><span class="s1">SynthDef</span>(<span class="s2">\sin_grain_test</span>, {<span class="s1">arg</span> gate = 1, amp = 1, envbuf;</p>
 <p class="p5"><span class="Apple-tab-span">	</span><span class="s1">var</span> pan, env, freqdev;</p>
 <p class="p6"><span class="s3"><span class="Apple-tab-span">	</span></span>// use mouse x to control panning</p>
-<p class="p5"><span class="Apple-tab-span">	</span>pan = -0.5;// <span class="s1">MouseX</span>.kr(-1, 1);</p>
+<p class="p5"><span class="Apple-tab-span">	</span>pan = <span class="s1">MouseX</span>.kr(-1, 1);</p>
 <p class="p6"><span class="s3"><span class="Apple-tab-span">	</span></span>// use WhiteNoise and mouse y to control deviation from center pitch</p>
 <p class="p5"><span class="Apple-tab-span">	</span>freqdev = <span class="s1">WhiteNoise</span>.kr(<span class="s1">MouseY</span>.kr(0, 400));</p>
 <p class="p5"><span class="Apple-tab-span">	</span>env = <span class="s1">EnvGen</span>.kr(</p>


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.