[PD-cvs] externals/hcs/pan equal_power_pan~-help.pd, NONE, 1.1 equal_power_pan~.pd, NONE, 1.1 gogins_pan~-help.pd, NONE, 1.1 gogins_pan~.pd, NONE, 1.1 linear_pan~-help.pd, NONE, 1.1 linear_pan~.pd, NONE, 1.1 pan_core~.pd, NONE, 1.1 square_root_pan~-help.pd, NONE, 1.1 square_root_pan~.pd, NONE, 1.1 TODO, 1.1, 1.2 goginspan~-help.pd, 1.1, NONE linearpan~-help.pd, 1.1, NONE linearpan~.pd, 1.3, NONE

Hans-Christoph Steiner eighthave at users.sourceforge.net
Mon Dec 26 03:07:52 CET 2005


Update of /cvsroot/pure-data/externals/hcs/pan
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4785

Modified Files:
	TODO 
Added Files:
	equal_power_pan~-help.pd equal_power_pan~.pd 
	gogins_pan~-help.pd gogins_pan~.pd linear_pan~-help.pd 
	linear_pan~.pd pan_core~.pd square_root_pan~-help.pd 
	square_root_pan~.pd 
Removed Files:
	goginspan~-help.pd linearpan~-help.pd linearpan~.pd 
Log Message:
added panning algorithms from http://www.csounds.com/ezine/autumn1999/beginners/

--- NEW FILE: equal_power_pan~.pd ---
#N canvas 509 36 445 434 10;
#X obj 23 38 inlet~;
#X obj 234 48 inlet;
#X obj 23 322 outlet~;
#X obj 81 322 outlet~;
#X text 30 342 left;
#X text 84 342 right;
#X obj 234 124 expr if($f1 > 0 \, $f1 \, 0);
#X obj 234 105 expr if($f1 < 1 \, $f1 \, 1);
#X text 247 91 filter so 0 < f < 1;
#X text 130 368 (C) Copyright 2004 Hans-Christoph Steiner;
#X text 234 384 released under the GNU GPL;
#X obj 23 263 pan_core~;
#X obj 309 44 loadbang;
#X msg 309 64 0.5;
#X obj 39 184 expr cos($f1 * 3.14159 / 2);
#X obj 234 184 expr sin($f1 * 3.14159 / 2);
#X text 10 17 [equal_power_pan~];
#X connect 0 0 11 0;
#X connect 1 0 7 0;
#X connect 6 0 14 0;
#X connect 6 0 15 0;
#X connect 7 0 6 0;
#X connect 11 0 2 0;
#X connect 11 1 3 0;
#X connect 12 0 13 0;
#X connect 13 0 7 0;
#X connect 14 0 11 1;
#X connect 15 0 11 2;

--- NEW FILE: linear_pan~-help.pd ---
#N canvas 503 335 477 320 10;
#X obj 5 2 cnv 15 450 20 empty empty [linearpan~] 2 11 1 18 -233017
-66577 0;
#X obj 422 3 pddp;
#X text 27 270 (C) Copyright 2004 Hans-Christoph Steiner <hans at at.or.at>
;
#X text 244 284 released under the GNU GPL;
#X obj 134 225 dac~;
#X obj 181 145 hsl 128 20 0 1 0 1 empty empty pan_position 6 10 1 11
-262131 -1 -1 6350 0;
#X text 16 37 Pan a mono signal using linear panning. The left inlet
takes the audio signal and the right inlet takes the control signal
with 0 = left \, 1 = right \, and 0.5 = center.;
#X obj 84 131 osc~ 250;
#X obj 84 152 *~ 0.5;
#X obj 362 186 tgl 25 0 empty empty DSP 3 12 1 9 -24198 -1 -1 1 1;
#X msg 362 218 \; pd dsp \$1;
#X obj 113 187 linearpan~;
#X connect 5 0 11 1;
#X connect 7 0 8 0;
#X connect 8 0 11 0;
#X connect 9 0 10 0;
#X connect 11 0 4 0;
#X connect 11 1 4 1;

--- NEW FILE: square_root_pan~-help.pd ---
#N canvas 360 90 481 324 10;
#X obj 5 2 cnv 15 450 20 empty empty [square_root_pan~] 2 11 1 18 -233017
-66577 0;
#X obj 422 3 pddp;
#X text 27 270 (C) Copyright 2004 Hans-Christoph Steiner <hans at at.or.at>
;
#X text 244 284 released under the GNU GPL;
#X obj 224 149 hsl 128 20 0 1 0 1 empty empty pan_position 6 10 1 11
-262131 -1 -1 6350 0;
#X obj 113 131 osc~ 250;
#X obj 113 152 *~ 0.5;
#X obj 362 186 tgl 25 0 empty empty DSP 3 12 1 9 -24198 -1 -1 0 1;
#X msg 362 218 \; pd dsp \$1;
#X text 16 71 The left inlet takes the audio signal and the right inlet
takes the control signal with 0 = left \, 1 = right \, and 0.5 = center.
;
#X text 16 37 Pan a mono signal using square root panning to smooth
out the dead spot in the middle somewhat.;
#X obj 113 187 square_root_pan~;
#X obj 141 234 dac~ 1 2;
#X connect 4 0 11 1;
#X connect 5 0 6 0;
#X connect 6 0 11 0;
#X connect 7 0 8 0;
#X connect 11 0 12 0;
#X connect 11 1 12 1;

--- NEW FILE: pan_core~.pd ---
#N canvas 405 25 454 576 10;
#X obj 11 96 inlet~;
#X obj 216 116 inlet;
#X obj 70 443 *~;
#X obj 70 472 outlet~;
#X obj 200 442 *~;
#X obj 200 471 outlet~;
#X text 77 492 left;
#X text 203 491 right;
#X text 130 518 (C) Copyright 2004 Hans-Christoph Steiner;
#X text 234 534 released under the GNU GPL;
#X obj 216 418 line~;
#X obj 86 418 line~;
#X obj 307 183 loadbang;
#X floatatom 315 244 7 0 0 3 blocksize_in_ms - -;
#X obj 290 184 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 216 337 t f b;
#X obj 246 356 f;
#X obj 216 379 pack f f;
#X msg 216 399 \$1 \$2;
#X obj 86 337 t f b;
#X obj 116 356 f;
#X obj 86 379 pack f f;
#X msg 86 399 \$1 \$2;
#X obj 307 215 blocksize_in_ms;
#X obj 86 117 inlet;
#X text 10 17 [pan_core~];
#X connect 0 0 2 0;
#X connect 0 0 4 0;
#X connect 1 0 15 0;
#X connect 2 0 3 0;
#X connect 4 0 5 0;
#X connect 10 0 4 1;
#X connect 11 0 2 1;
#X connect 12 0 23 0;
#X connect 14 0 23 0;
#X connect 15 0 17 0;
#X connect 15 1 16 0;
#X connect 16 0 17 1;
#X connect 17 0 18 0;
#X connect 18 0 10 0;
#X connect 19 0 21 0;
#X connect 19 1 20 0;
#X connect 20 0 21 1;
#X connect 21 0 22 0;
#X connect 22 0 11 0;
#X connect 23 0 13 0;
#X connect 23 0 16 1;
#X connect 23 0 20 1;
#X connect 24 0 19 0;

--- goginspan~-help.pd DELETED ---

--- NEW FILE: equal_power_pan~-help.pd ---
#N canvas 219 32 485 328 10;
#X obj 5 2 cnv 15 450 20 empty empty [equal_power_pan~] 2 11 1 18 -233017
-66577 0;
#X obj 422 3 pddp;
#X text 27 270 (C) Copyright 2004 Hans-Christoph Steiner <hans at at.or.at>
;
#X text 244 284 released under the GNU GPL;
#X obj 224 149 hsl 128 20 0 1 0 1 empty empty pan_position 6 10 1 11
-262131 -1 -1 0 0;
#X obj 113 131 osc~ 250;
#X obj 113 152 *~ 0.5;
#X obj 362 186 tgl 25 0 empty empty DSP 3 12 1 9 -24198 -1 -1 0 1;
#X msg 362 218 \; pd dsp \$1;
#X text 16 71 The left inlet takes the audio signal and the right inlet
takes the control signal with 0 = left \, 1 = right \, and 0.5 = center.
;
#X text 16 37 Pan a mono signal using square root panning to smooth
out the dead spot in the middle somewhat.;
#X obj 141 234 dac~ 1 2;
#X obj 113 187 equal_power_pan~;
#X connect 4 0 12 1;
#X connect 5 0 6 0;
#X connect 6 0 12 0;
#X connect 7 0 8 0;
#X connect 12 0 11 0;
#X connect 12 1 11 1;

--- NEW FILE: linear_pan~.pd ---
#N canvas 438 88 458 368 10;
#X obj 23 38 inlet~;
#X obj 193 36 inlet;
#X obj 23 262 outlet~;
#X obj 81 262 outlet~;
#X text 30 282 left;
#X text 84 282 right;
#X obj 193 112 expr if($f1 > 0 \, $f1 \, 0);
#X obj 193 93 expr if($f1 < 1 \, $f1 \, 1);
#X text 206 79 filter so 0 < f < 1;
#X obj 40 150 expr 1 - $f1;
#X text 130 318 (C) Copyright 2004 Hans-Christoph Steiner;
#X text 234 334 released under the GNU GPL;
#X text 10 17 [linearpan~];
#X obj 23 203 pan_core~;
#X obj 268 32 loadbang;
#X msg 268 52 0.5;
#X connect 0 0 13 0;
#X connect 1 0 7 0;
#X connect 6 0 9 0;
#X connect 6 0 13 2;
#X connect 7 0 6 0;
#X connect 9 0 13 1;
#X connect 13 0 2 0;
#X connect 13 1 3 0;
#X connect 14 0 15 0;
#X connect 15 0 7 0;

--- linearpan~-help.pd DELETED ---

--- NEW FILE: gogins_pan~.pd ---
#N canvas 612 28 518 582 10;
#X obj 23 38 inlet~;
#X obj 139 47 inlet;
#X obj 23 482 outlet~;
#X obj 81 482 outlet~;
#X text 30 502 left;
#X text 84 502 right;
#X obj 139 93 expr if($f1 > 0 \, $f1 \, 0);
#X obj 139 74 expr if($f1 < 1 \, $f1 \, 1);
#X text 174 59 filter so 0 < f < 1;
#X text 130 528 (C) Copyright 2004 Hans-Christoph Steiner;
#X text 234 544 released under the GNU GPL;
#X obj 23 443 pan_core~;
#X obj 107 27 loadbang;
#X msg 107 47 0.5;
#X obj 209 132 pi;
#X obj 337 171 / 2;
#X text 10 17 [gogins_pan~];
#X obj 368 93 loadbang;
#X obj 369 313 expr sqrt(2)/2;
#X obj 209 152 trigger float float;
#X obj 106 387 *;
#X obj 208 388 *;
#X obj 140 190 *;
#X obj 140 211 -;
#X obj 140 238 trigger float float;
#X obj 140 263 cos;
#X obj 268 262 sin;
#X text 101 456 the algorithm comes from Michael Gogins on the Csound
list;
#X obj 207 326 +;
#X obj 107 324 -;
#X connect 0 0 11 0;
#X connect 1 0 7 0;
#X connect 6 0 22 0;
#X connect 7 0 6 0;
#X connect 11 0 2 0;
#X connect 11 1 3 0;
#X connect 12 0 13 0;
#X connect 13 0 7 0;
#X connect 14 0 19 0;
#X connect 15 0 23 1;
#X connect 17 0 14 0;
#X connect 17 0 18 0;
#X connect 18 0 21 1;
#X connect 18 0 20 1;
#X connect 19 0 22 1;
#X connect 19 1 15 0;
#X connect 20 0 11 1;
#X connect 21 0 11 2;
#X connect 22 0 23 0;
#X connect 23 0 24 0;
#X connect 24 0 25 0;
#X connect 24 1 26 0;
#X connect 25 0 28 0;
#X connect 25 0 29 0;
#X connect 26 0 28 1;
#X connect 26 0 29 1;
#X connect 28 0 21 0;
#X connect 29 0 20 0;

--- NEW FILE: gogins_pan~-help.pd ---
#N canvas 7 59 485 328 10;
#X obj 5 2 cnv 15 450 20 empty empty [gogins_pan~] 2 11 1 18 -233017
-66577 0;
#X obj 422 3 pddp;
#X text 27 270 (C) Copyright 2004 Hans-Christoph Steiner <hans at at.or.at>
;
#X text 244 284 released under the GNU GPL;
#X obj 224 149 hsl 128 20 0 1 0 1 empty empty pan_position 6 10 1 11
-262131 -1 -1 0 0;
#X obj 113 131 osc~ 250;
#X obj 113 152 *~ 0.5;
#X obj 362 186 tgl 25 0 empty empty DSP 3 12 1 9 -24198 -1 -1 0 1;
#X msg 362 218 \; pd dsp \$1;
#X text 17 82 The left inlet takes the audio signal and the right inlet
takes the control signal with 0 = left \, 1 = right \, and 0.5 = center.
;
#X obj 122 231 dac~ 1 2;
#X obj 114 187 gogins_pan~;
#X text 15 36 Pan a mono signal using an algorithm posted by Michael
Gogins to the Csound list. The aim is to have the pan feel like its
wrapping around more.;
#X connect 4 0 11 1;
#X connect 5 0 6 0;
#X connect 6 0 11 0;
#X connect 7 0 8 0;
#X connect 11 0 10 0;
#X connect 11 1 10 1;

Index: TODO
===================================================================
RCS file: /cvsroot/pure-data/externals/hcs/pan/TODO,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** TODO	28 Nov 2004 20:48:31 -0000	1.1
--- TODO	26 Dec 2005 02:07:49 -0000	1.2
***************
*** 1,3 ****
--- 1,5 ----
  
+ - check F.Moore's Elements of Computer Music for panning algorithms
+ 
  - remove motex [pan~] from distros and replace with these Pd patches.
  
***************
*** 6,13 ****
  - write pan_gogins~.c in Pd
  
- - implmenet other panning algorithms in Pd from 
-   http://www.csounds.com/ezine/autumn1999/beginners/
- 
  - write all_about_panning, including graphs and discussion from 
    http://www.csounds.com/ezine/autumn1999/beginners/
  
--- 8,13 ----
  - write pan_gogins~.c in Pd
  
  - write all_about_panning, including graphs and discussion from 
    http://www.csounds.com/ezine/autumn1999/beginners/
  
+ - include vbap~ and other advanced panning methods

--- linearpan~.pd DELETED ---

--- NEW FILE: square_root_pan~.pd ---
#N canvas 509 36 441 430 10;
#X obj 23 38 inlet~;
#X obj 234 48 inlet;
#X obj 23 322 outlet~;
#X obj 81 322 outlet~;
#X text 30 342 left;
#X text 84 342 right;
#X obj 234 124 expr if($f1 > 0 \, $f1 \, 0);
#X obj 234 105 expr if($f1 < 1 \, $f1 \, 1);
#X text 247 91 filter so 0 < f < 1;
#X text 130 368 (C) Copyright 2004 Hans-Christoph Steiner;
#X text 234 384 released under the GNU GPL;
#X obj 23 263 pan_core~;
#X obj 309 44 loadbang;
#X msg 309 64 0.5;
#X obj 80 239 sqrt;
#X obj 50 158 expr sqrt(1 - $f1);
#X text 10 17 [square_root_pan~];
#X connect 0 0 11 0;
#X connect 1 0 7 0;
#X connect 6 0 14 0;
#X connect 6 0 15 0;
#X connect 7 0 6 0;
#X connect 11 0 2 0;
#X connect 11 1 3 0;
#X connect 12 0 13 0;
#X connect 13 0 7 0;
#X connect 14 0 11 2;
#X connect 15 0 11 1;





More information about the Pd-cvs mailing list