Commit 735bfa28 authored by Miller Puckette's avatar Miller Puckette
Browse files

fix to testtone and remove pdfs from source

parent 73df1ff7
#N canvas 130 55 494 364 12;
#X floatatom 84 288 3 0 0 0 - - -;
#X obj 34 237 notein;
#X obj 34 263 stripnote;
#X floatatom 34 288 3 0 0 0 - - -;
#N canvas 283 503 494 364 12;
#X floatatom 72 273 3 0 0 0 - - -;
#X obj 27 221 notein;
#X obj 27 247 stripnote;
#X floatatom 27 272 3 0 0 0 - - -;
#X text 219 234 MIDI OUT;
#X text 34 213 MIDI IN;
#X floatatom 166 287 3 0 0 0 - - -;
#X floatatom 127 287 3 0 0 0 - - -;
#X obj 127 262 ctlin;
#N canvas 0 0 484 446 midi 0;
#X text 27 197 MIDI IN;
#X floatatom 150 272 3 0 0 0 - - -;
#X floatatom 120 271 3 0 0 0 - - -;
#X obj 120 246 ctlin;
#N canvas 0 22 484 446 midi 0;
#X obj 96 65 inlet;
#X obj 96 262 noteout;
#X floatatom 96 92 0 0 0 0 - - -;
......@@ -55,15 +55,13 @@
#X obj 177 126 tgl 20 0 tone-ch1 tone-ch1 1 5 -8 0 12 -262144 -1 -1
1 1;
#X obj 202 126 tgl 20 0 tone-ch2 tone-ch2 2 5 -8 0 12 -262144 -1 -1
0 1;
1 1;
#X obj 219 258 tgl 20 0 empty empty empty 20 8 0 8 -262144 -1 -1 0
1;
#X obj 184 192 tgl 15 0 tone-monitor set-tone-monitor monitor-inputs
23 8 0 12 -262144 -1 -1 0 1;
#X text 40 120 OFF;
#X text 39 105 -40;
#X text 39 88 -20;
#N canvas 0 0 524 326 more 0;
#N canvas 0 22 524 326 more 0;
#X floatatom 42 209 0 0 0 0 - - -;
#X obj 42 183 f;
#X obj 79 183 + 1;
......@@ -121,9 +119,9 @@
#X text 101 88 noise;
#X text 100 105 tone;
#X obj 84 90 vradio 15 1 0 2 tone-type tone-type-set empty 0 -6 0 8
-262144 -1 -1 0;
-262144 -1 -1 1;
#X obj 22 91 vradio 15 1 0 3 tone-radio tone-radio-set empty 0 -6 0
8 -262144 -1 -1 2;
8 -262144 -1 -1 1;
#X floatatom 376 93 3 0 0 0 - tone-vu7 -;
#X floatatom 404 93 3 0 0 0 - tone-vu8 -;
#X obj 375 126 tgl 20 0 tone-ch7 tone-ch7 7 5 -8 0 12 -262144 -1 -1
......@@ -153,7 +151,7 @@ set 1 \;;
#X connect 1 0 3 0;
#X connect 2 0 4 0;
#X restore 22 332 pd glue+loadbang;
#N canvas 462 84 468 559 tone-generator 0;
#N canvas 207 133 468 559 tone-generator 0;
#X obj 22 187 osc~;
#X obj 22 81 mtof;
#X floatatom 22 58 0 0 0 0 - - -;
......@@ -485,7 +483,7 @@ set 1 \;;
#X connect 111 0 101 0;
#X restore 38 387 pd assigns;
#X obj 178 87 loadbang;
#X obj 178 111 0;
#X obj 178 111 1;
#X connect 1 0 0 0;
#X connect 2 0 1 0;
#X connect 3 0 2 0;
......@@ -498,17 +496,26 @@ set 1 \;;
#X floatatom 84 123 5 0 100 1 pitch tone-pitch-set tone-pitch;
#X floatatom 84 145 5 0 20000 1 HZ tone-hz-set tone-hz;
#X text 48 145 dB;
#X text 28 67 TEST TONES;
#X text 34 67 TEST TONES;
#X text 233 156 AUDIO OUTPUT ON/OFF;
#X text 35 7 Welcome to Pd ("Pure Data"). You can use this window to
#X text 18 5 Welcome to Pd ("Pure Data"). You can use this window to
test audio and MIDI connections. To see Pd's DOCUMENTATION \, select
"getting started" in the Help menu.;
#X text 37 324 Pd is Free software under the BSD license. See LICENSE.txt
#X text 18 323 Pd is Free software under the BSD license. See LICENSE.txt
in the distribution for details.;
#X obj 27 292 bng 20 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X obj 120 293 bng 20 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X text 39 105 60;
#X text 39 88 80;
#X text 16 163 (100 max);
#X connect 1 0 2 0;
#X connect 1 1 2 1;
#X connect 2 0 3 0;
#X connect 2 1 0 0;
#X connect 3 0 47 0;
#X connect 7 0 48 0;
#X connect 8 0 7 0;
#X connect 8 1 6 0;
#X connect 14 0 9 0;
#N canvas 153 160 822 395 12;
#X floatatom 93 305 3 0 0 0 - - -;
#X obj 43 254 notein;
#X obj 43 280 stripnote;
#X floatatom 43 305 3 0 0 0 - - -;
#X text 186 8 Welcome to Pd ("Pure Data"). This window can test your
audio and MIDI connections. To see Pd's DOCUMENTATION select "getting
started" in the Help menu.;
#X text 228 251 MIDI OUT;
#X text 43 230 MIDI IN;
#X floatatom 175 304 3 0 0 0 - - -;
#X floatatom 136 304 3 0 0 0 - - -;
#X obj 136 279 ctlin;
#N canvas 117 205 706 319 12;
#X floatatom 86 283 3 0 0 0 - - -;
#X obj 36 232 notein;
#X obj 36 258 stripnote;
#X floatatom 36 283 3 0 0 0 - - -;
#X text 224 229 MIDI OUT;
#X text 36 208 MIDI IN;
#X floatatom 171 282 3 0 0 0 - - -;
#X floatatom 132 282 3 0 0 0 - - -;
#X obj 132 257 ctlin;
#N canvas 0 0 484 446 midi 0;
#X obj 96 65 inlet;
#X obj 96 262 noteout;
......@@ -52,20 +49,15 @@ started" in the Help menu.;
#X connect 13 0 9 0;
#X connect 14 0 10 0;
#X connect 20 0 19 0;
#X restore 228 301 pd midi;
#X floatatom 137 185 3 0 0 0 - tone-vu1 -;
#X floatatom 164 185 3 0 0 0 - tone-vu2 -;
#X obj 138 158 tgl 20 0 tone-ch1 tone-ch1 1 5 -8 0 12 -262144 -1 -1
#X restore 224 279 pd midi;
#X floatatom 170 107 3 0 0 0 - tone-vu1 -;
#X floatatom 197 107 3 0 0 0 - tone-vu2 -;
#X obj 170 144 tgl 20 0 tone-ch1 tone-ch1 1 5 -8 0 12 -262144 -1 -1
1 1;
#X obj 163 158 tgl 20 0 tone-ch2 tone-ch2 2 5 -8 0 12 -262144 -1 -1
#X obj 195 144 tgl 20 0 tone-ch2 tone-ch2 2 5 -8 0 12 -262144 -1 -1
1 1;
#X obj 228 275 tgl 20 0 empty empty empty 20 8 0 8 -262144 -1 -1 0
#X obj 224 253 tgl 20 0 empty empty empty 20 8 0 8 -262144 -1 -1 0
1;
#X obj 698 154 tgl 20 0 tone-monitor set-tone-monitor monitor 25 10
0 12 -262144 -1 -1 0 1;
#X text 69 133 OFF;
#X text 68 118 -40;
#X text 68 101 -20;
#N canvas 0 0 662 344 more 0;
#X floatatom 42 209 0 0 0 0 - - -;
#X obj 42 183 f;
......@@ -90,42 +82,30 @@ started" in the Help menu.;
#X connect 4 0 3 0;
#X connect 11 0 12 0;
#X connect 13 0 12 0;
#X restore 663 326 pd more;
#X obj 698 186 tgl 20 0 tone-hipass set-tone-hipass input-hipass 25
10 0 12 -262144 -1 -1 0 1;
#X obj 196 158 tgl 20 0 tone-ch3 tone-ch3 3 5 -8 0 12 -262144 -1 -1
#X restore 584 272 pd more;
#X obj 228 144 tgl 20 0 tone-ch3 tone-ch3 3 5 -8 0 12 -262144 -1 -1
1 1;
#X obj 221 158 tgl 20 0 tone-ch4 tone-ch4 4 5 -8 0 12 -262144 -1 -1
#X obj 253 144 tgl 20 0 tone-ch4 tone-ch4 4 5 -8 0 12 -262144 -1 -1
1 1;
#X obj 254 158 tgl 20 0 tone-ch5 tone-ch5 5 5 -8 0 12 -262144 -1 -1
#X obj 286 144 tgl 20 0 tone-ch5 tone-ch5 5 5 -8 0 12 -262144 -1 -1
1 1;
#X obj 279 158 tgl 20 0 tone-ch6 tone-ch6 6 5 -8 0 12 -262144 -1 -1
#X obj 311 144 tgl 20 0 tone-ch6 tone-ch6 6 5 -8 0 12 -262144 -1 -1
1 1;
#X obj 628 145 bng 15 250 50 0 tone-all empty ALL 20 8 0 12 -262144
#X obj 647 132 bng 15 250 50 0 tone-all empty ALL 20 8 0 12 -262144
-1 -1;
#X obj 628 166 bng 15 250 50 0 tone-none empty NONE 20 8 0 12 -262144
#X obj 647 153 bng 15 250 50 0 tone-none empty NONE 20 8 0 12 -262144
-1 -1;
#X floatatom 195 185 3 0 0 0 - tone-vu3 -;
#X floatatom 222 185 3 0 0 0 - tone-vu4 -;
#X floatatom 253 185 3 0 0 0 - tone-vu5 -;
#X floatatom 280 185 3 0 0 0 - tone-vu6 -;
#X text 307 207 AUDIO INPUT (RMS dB);
#X text 45 62 TEST;
#X text 70 171 noise;
#X text 69 188 tone;
#X text 44 80 SIGNAL;
#X text 317 104 test signal channels:;
#X obj 51 174 vradio 15 1 0 2 tone-type tone-type-set empty 0 -6 0
8 -262144 -1 -1 1;
#X obj 51 104 vradio 15 1 0 3 tone-radio tone-radio-set empty 0 -6
0 8 -262144 -1 -1 2;
#X floatatom 313 185 3 0 0 0 - tone-vu7 -;
#X floatatom 340 185 3 0 0 0 - tone-vu8 -;
#X obj 313 158 tgl 20 0 tone-ch7 tone-ch7 7 5 -8 0 12 -262144 -1 -1
#X floatatom 227 107 3 0 0 0 - tone-vu3 -;
#X floatatom 254 107 3 0 0 0 - tone-vu4 -;
#X floatatom 285 107 3 0 0 0 - tone-vu5 -;
#X floatatom 312 107 3 0 0 0 - tone-vu6 -;
#X floatatom 345 107 3 0 0 0 - tone-vu7 -;
#X floatatom 372 107 3 0 0 0 - tone-vu8 -;
#X obj 345 144 tgl 20 0 tone-ch7 tone-ch7 7 5 -8 0 12 -262144 -1 -1
1 1;
#X obj 338 158 tgl 20 0 tone-ch8 tone-ch8 8 5 -8 0 12 -262144 -1 -1
#X obj 370 144 tgl 20 0 tone-ch8 tone-ch8 8 5 -8 0 12 -262144 -1 -1
1 1;
#N canvas 233 399 321 422 audio 0;
#N canvas 637 91 321 422 audio 0;
#X obj 25 303 s~ tone-mon;
#X obj 25 277 line~;
#X obj 25 249 pack 0 50;
......@@ -133,54 +113,77 @@ started" in the Help menu.;
#X obj 28 140 * 5;
#X obj 28 165 s tone-hip;
#X obj 28 114 r tone-hipass;
#N canvas 499 63 548 519 glue+loadbang 0;
#N canvas 275 246 482 404 glue+loadbang 0;
#X obj 8 20 loadbang;
#X obj 175 18 r tone-all;
#X obj 285 16 r tone-none;
#X msg 8 48 \; pd dsp 1 \; tone-pitch 69 \; tone-radio 2 \; tone-radio-set
2 \; tone-type 1 \; tone-type-set 1 \; tone-all 1 \;;
set 2 \; tone-type 1 \; tone-type-set 1 \; tone-all 1 \; tone-hipass-set
set 1 \;;
#X msg 175 46 \; tone-ch1 1 \; tone-ch2 1 \; tone-ch3 1 \; tone-ch4
1 \; tone-ch5 1 \; tone-ch6 1 \; tone-ch7 1 \; tone-ch8 1;
1 \; tone-ch5 1 \; tone-ch6 1 \; tone-ch7 1 \; tone-ch8 1 \; tone-ch9
1 \; tone-ch10 1 \; tone-ch11 1 \; tone-ch12 1 \; tone-ch13 1 \; tone-ch14
1 \; tone-ch15 1 \; tone-ch16 1;
#X msg 285 47 \; tone-ch1 0 \; tone-ch2 0 \; tone-ch3 0 \; tone-ch4
0 \; tone-ch5 0 \; tone-ch6 0 \; tone-ch7 0 \; tone-ch8 0;
0 \; tone-ch5 0 \; tone-ch6 0 \; tone-ch7 0 \; tone-ch8 0 \; tone-ch9
0 \; tone-ch10 0 \; tone-ch11 0 \; tone-ch12 0 \; tone-ch13 0 \; tone-ch14
0 \; tone-ch15 0 \; tone-ch16 0;
#X connect 0 0 3 0;
#X connect 1 0 4 0;
#X connect 2 0 5 0;
#X restore 22 332 pd glue+loadbang;
#N canvas 487 35 468 559 tone-generator 0;
#X obj 22 134 osc~;
#X obj 22 66 mtof;
#X floatatom 22 43 0 0 0 0 - - -;
#X floatatom 22 88 0 0 0 0 - - -;
#X obj 22 110 sig~;
#X obj 22 18 r tone-pitch;
#X obj 119 60 noise~;
#X obj 65 196 +~;
#X obj 282 87 - 1;
#X obj 282 119 * -1;
#X obj 191 175 line~;
#X obj 281 176 line~;
#X obj 22 158 *~;
#X obj 119 157 *~;
#X msg 191 146 \$1 20;
#X msg 281 147 \$1 20;
#X floatatom 239 54 0 0 0 0 - - -;
#X obj 64 451 *~;
#X obj 86 424 line~;
#X obj 86 397 pack 0 50;
#X floatatom 86 345 0 0 0 0 - - -;
#X obj 86 370 dbtorms;
#X obj 64 477 s~ tone-osc;
#X obj 86 262 r tone-radio;
#X obj 86 290 sel 0 1 2;
#X msg 155 313 0;
#X msg 86 315 80;
#X msg 119 315 60;
#X obj 239 31 r tone-type;
#N canvas 731 146 468 559 tone-generator 0;
#X obj 22 187 osc~;
#X obj 22 81 mtof;
#X floatatom 22 58 0 0 0 0 - - -;
#X floatatom 22 103 0 0 0 0 - - -;
#X obj 22 163 sig~;
#X obj 22 33 r tone-pitch;
#X obj 119 179 noise~;
#X obj 65 249 +~;
#X obj 282 140 - 1;
#X obj 282 172 * -1;
#X obj 191 228 line~;
#X obj 281 229 line~;
#X obj 22 211 *~;
#X obj 119 210 *~;
#X msg 191 199 \$1 20;
#X msg 281 200 \$1 20;
#X floatatom 273 109 0 0 0 0 - - -;
#X obj 64 504 *~;
#X obj 86 477 line~;
#X obj 86 450 pack 0 50;
#X floatatom 201 365 0 0 0 0 - - -;
#X obj 86 423 dbtorms;
#X obj 64 530 s~ tone-osc;
#X obj 201 282 r tone-radio;
#X obj 201 310 sel 0 1 2;
#X msg 270 333 0;
#X msg 201 335 80;
#X msg 234 335 60;
#X obj 273 86 r tone-type;
#X obj 89 359 r tone-level;
#X obj 178 453 s tone-level-set;
#X msg 177 428 set \$1;
#X obj 329 452 s tone-radio-set;
#X obj 327 369 sel 80 60 0;
#X msg 327 394 0;
#X msg 360 394 1;
#X msg 393 394 2;
#X msg 329 426 set \$1;
#X msg 423 394 2;
#X obj 72 89 s tone-pitch-set;
#X msg 72 66 set \$1;
#X obj 177 29 r tone-hz;
#X msg 75 117 set \$1;
#X obj 75 140 s tone-hz-set;
#X obj 177 55 ftom;
#X connect 0 0 12 0;
#X connect 1 0 3 0;
#X connect 2 0 1 0;
#X connect 2 0 40 0;
#X connect 3 0 4 0;
#X connect 3 0 42 0;
#X connect 4 0 0 0;
#X connect 5 0 2 0;
#X connect 6 0 13 0;
......@@ -199,6 +202,7 @@ started" in the Help menu.;
#X connect 18 0 17 1;
#X connect 19 0 18 0;
#X connect 20 0 21 0;
#X connect 20 0 31 0;
#X connect 21 0 19 0;
#X connect 23 0 24 0;
#X connect 24 0 26 0;
......@@ -208,6 +212,22 @@ started" in the Help menu.;
#X connect 26 0 20 0;
#X connect 27 0 20 0;
#X connect 28 0 16 0;
#X connect 29 0 31 0;
#X connect 29 0 21 0;
#X connect 31 0 30 0;
#X connect 33 0 34 0;
#X connect 33 1 35 0;
#X connect 33 2 36 0;
#X connect 33 3 38 0;
#X connect 34 0 37 0;
#X connect 35 0 37 0;
#X connect 36 0 37 0;
#X connect 37 0 32 0;
#X connect 38 0 37 0;
#X connect 40 0 39 0;
#X connect 41 0 44 0;
#X connect 42 0 43 0;
#X connect 44 0 2 0;
#X restore 24 68 pd tone-generator;
#N canvas 184 0 1014 892 assigns 0;
#X obj 12 71 hip~ 5;
......@@ -675,42 +695,65 @@ started" in the Help menu.;
#X connect 238 0 192 0;
#X connect 239 0 203 0;
#X restore 38 387 pd assigns;
#X obj 178 87 loadbang;
#X obj 178 111 1;
#X connect 1 0 0 0;
#X connect 2 0 1 0;
#X connect 3 0 2 0;
#X connect 4 0 5 0;
#X connect 6 0 4 0;
#X restore 663 303 pd audio;
#X floatatom 376 186 3 0 0 0 - tone-vu9 -;
#X floatatom 403 186 3 0 0 0 - tone-vu10 -;
#X floatatom 434 186 3 0 0 0 - tone-vu11 -;
#X floatatom 461 186 3 0 0 0 - tone-vu12 -;
#X floatatom 492 186 3 0 0 0 - tone-vu13 -;
#X floatatom 519 186 3 0 0 0 - tone-vu14 -;
#X floatatom 552 186 3 0 0 0 - tone-vu15 -;
#X floatatom 579 186 3 0 0 0 - tone-vu16 -;
#X obj 376 158 tgl 20 0 tone-ch9 tone-ch9 9 5 -8 0 12 -262144 -1 -1
0 1;
#X obj 401 158 tgl 20 0 tone-ch10 tone-ch10 10 5 -8 0 12 -262144 -1
-1 0 1;
#X obj 434 158 tgl 20 0 tone-ch11 tone-ch11 11 5 -8 0 12 -262144 -1
-1 0 1;
#X obj 459 158 tgl 20 0 tone-ch12 tone-ch12 12 5 -8 0 12 -262144 -1
-1 0 1;
#X obj 492 158 tgl 20 0 tone-ch13 tone-ch13 13 5 -8 0 12 -262144 -1
-1 0 1;
#X obj 517 158 tgl 20 0 tone-ch14 tone-ch14 14 5 -8 0 12 -262144 -1
-1 0 1;
#X obj 551 158 tgl 20 0 tone-ch15 tone-ch15 15 5 -8 0 12 -262144 -1
-1 0 1;
#X obj 576 158 tgl 20 0 tone-ch116 tone-ch16 16 5 -8 0 12 -262144 -1
-1 0 1;
#X text 24 341 PD is BSD licensed. See the file \, LICENSE.txt in the
distribution.;
#X connect 10 0 11 0;
#X connect 11 0 4 0;
#X restore 584 249 pd audio;
#X floatatom 408 108 3 0 0 0 - tone-vu9 -;
#X floatatom 435 108 3 0 0 0 - tone-vu10 -;
#X floatatom 466 108 3 0 0 0 - tone-vu11 -;
#X floatatom 493 108 3 0 0 0 - tone-vu12 -;
#X floatatom 524 108 3 0 0 0 - tone-vu13 -;
#X floatatom 551 108 3 0 0 0 - tone-vu14 -;
#X floatatom 584 108 3 0 0 0 - tone-vu15 -;
#X floatatom 611 108 3 0 0 0 - tone-vu16 -;
#X obj 408 144 tgl 20 0 tone-ch9 tone-ch9 9 5 -8 0 12 -262144 -1 -1
1 1;
#X obj 433 144 tgl 20 0 tone-ch10 tone-ch10 10 5 -8 0 12 -262144 -1
-1 1 1;
#X obj 466 144 tgl 20 0 tone-ch11 tone-ch11 11 5 -8 0 12 -262144 -1
-1 1 1;
#X obj 491 144 tgl 20 0 tone-ch12 tone-ch12 12 5 -8 0 12 -262144 -1
-1 1 1;
#X obj 524 144 tgl 20 0 tone-ch13 tone-ch13 13 5 -8 0 12 -262144 -1
-1 1 1;
#X obj 549 144 tgl 20 0 tone-ch14 tone-ch14 14 5 -8 0 12 -262144 -1
-1 1 1;
#X obj 583 144 tgl 20 0 tone-ch15 tone-ch15 15 5 -8 0 12 -262144 -1
-1 1 1;
#X obj 608 144 tgl 20 0 tone-ch116 tone-ch16 16 5 -8 0 12 -262144 -1
-1 1 1;
#X text 235 25 16 channel test tone patch;
#X text 316 77 AUTIO INPUT (RMS dB);
#X text 337 175 AUDIO OUTPUT ON/OFF;
#X text 40 120 OFF;
#X text 101 88 noise;
#X text 100 105 tone;
#X obj 84 90 vradio 15 1 0 2 tone-type tone-type-set empty 0 -6 0 8
-262144 -1 -1 1;
#X obj 22 91 vradio 15 1 0 3 tone-radio tone-radio-set empty 0 -6 0
8 -262144 -1 -1 2;
#X floatatom 22 144 3 0 100 1 - tone-level-set tone-level;
#X floatatom 84 123 5 0 100 1 pitch tone-pitch-set tone-pitch;
#X floatatom 84 145 5 0 20000 1 HZ tone-hz-set tone-hz;
#X text 48 145 dB;
#X text 28 67 TEST TONES;
#X obj 265 201 tgl 15 0 tone-monitor set-tone-monitor monitor-inputs
23 8 0 12 -262144 -1 -1 0 1;
#X obj 424 202 tgl 15 0 tone-hipass tone-hipass-set input-hipass 23
8 0 12 -262144 -1 -1 1 1;
#X text 39 88 80;
#X text 39 105 60;
#X connect 1 0 2 0;
#X connect 1 1 2 1;
#X connect 2 0 3 0;
#X connect 2 1 0 0;
#X connect 9 0 8 0;
#X connect 9 1 7 0;
#X connect 15 0 10 0;
#X connect 8 0 7 0;
#X connect 8 1 6 0;
#X connect 14 0 9 0;
ASIO-README.txt
This document contains information to help you compile PortAudio with
ASIO support. If you find any omissions or errors in this document
please notify Ross Bencina <rossb@audiomulch.com>.
Building PortAudio with ASIO support
------------------------------------
To build PortAudio with ASIO support you need to compile and link with
pa_asio.c, and files from the ASIO SDK (see below), along with the common
files from pa_common/ and platform specific files from pa_win/ (for Win32)
or pa_mac/ (for Macintosh).
If you are compiling with a non-Microsoft compiler on windows, also
compile and link with iasiothiscallresolver.cpp (see below for
an explanation).
For some platforms (MingW, possibly Mac), you may simply
be able to type:
./configure --with-host_os=mingw --with-winapi=asio [--with-asiodir=/usr/local/asiosdk2]
make
./configure --with-host_os=darwin --with-winapi=asio [--with-asiodir=/usr/local/asiosdk2]
make
and life will be good.
Obtaining the ASIO SDK
----------------------
In order to build PortAudio with ASIO support, you need to download
the ASIO SDK (version 2.0) from Steinberg. Steinberg makes the ASIO
SDK available to anyone free of charge, however they do not permit its
source code to be distributed.
NOTE: In some cases the ASIO SDK may require patching, see below
for further details.
http://www.steinberg.net/en/ps/support/3rdparty/asio_sdk/
If the above link is broken search Google for:
"download steinberg ASIO SDK"
Building the ASIO SDK on Macintosh
----------------------------------
To build the ASIO SDK on Macintosh you need to compile and link with the
following files from the ASIO SDK:
host/asiodrivers.cpp
host/mac/asioshlib.cpp
host/mac/codefragements.cpp
Building the ASIO SDK on Windows
--------------------------------
To build the ASIO SDK on Windows you need to compile and link with the
following files from the ASIO SDK:
asio_sdk\common\asio.cpp
asio_sdk\host\asiodrivers.cpp
asio_sdk\host\pc\asiolist.cpp
You may also need to adjust your include paths to support inclusion of
header files from the above directories.
The ASIO SDK depends on the following COM API functions:
CoInitialize, CoUninitialize, CoCreateInstance, CLSIDFromString
For compilation with MinGW you will need to link with -lole32, for
Borland link with Import32.lib.
Non-Microsoft (MSVC) Compilers on Windows including Borland and GCC
-------------------------------------------------------------------
Steinberg did not specify a calling convention in the IASIO interface
definition. This causes the Microsoft compiler to use the proprietary
thiscall convention which is not compatible with other compilers, such
as compilers from Borland (BCC and C++Builder) and GNU (gcc).
Steinberg's ASIO SDK will compile but crash on initialization if
compiled with a non-Microsoft compiler on Windows.
PortAudio solves this problem using the iasiothiscallresolver library
which is included in the distribution. When building ASIO support for
non-Microsoft compilers, be sure to compile and link with
iasiothiscallresolver.cpp. Note that iasiothiscallresolver includes
conditional directives which cause it to have no effect if it is
compiled with a Microsoft compiler, or on the Macintosh.
If you use configure and make (see above), this should be handled
automatically for you.
For further information about the IASIO thiscall problem see this page:
http://www.audiomulch.com/~rossb/code/calliasio
Macintosh ASIO SDK Bug Patch
----------------------------
There is a bug in the ASIO SDK that causes the Macintosh version to
often fail during initialization. Below is a patch that you can apply.
In codefragments.cpp replace getFrontProcessDirectory function with
the following one (GetFrontProcess replaced by GetCurrentProcess).
bool CodeFragments::getFrontProcessDirectory(void *specs)
{
FSSpec *fss = (FSSpec *)specs;
ProcessInfoRec pif;
ProcessSerialNumber psn;
memset(&psn,0,(long)sizeof(ProcessSerialNumber));
// if(GetFrontProcess(&psn) == noErr) // wrong !!!
if(GetCurrentProcess(&psn) == noErr) // correct !!!
{
pif.processName = 0;
pif.processAppSpec = fss;
pif.processInfoLength = sizeof(ProcessInfoRec);
if(GetProcessInformation(&psn, &pif) == noErr)
return true;
}
return false;
}
---
README_MAC.txt for PortMidi
Roger Dannenberg
17 jan 2007
To build PortMidi for Mac OS X:
==== USING MAKE ====
go back up to the portmidi
directory and type
make -f pm_mac/Makefile.osx
(You can also copy pm_mac/Makefile.osx to Makfile in the
portmidi directory and just type "make".)
The Makefile.osx will build all test programs and the portmidi
library. You may want to modify the Makefile.osx to remove the
PM_CHECK_ERRORS definition. For experimental software,
especially programs running from the command line, we
recommend using PM_CHECK_ERRORS -- it will terminate your
program and print a helpful message if any PortMidi
function returns an error code.
If you do not compile with PM_CHECK_ERRORS, you should
check for errors yourself.
The make file will also build an OS X Universal (ppc and i386)
dynamic link library using xcode. For instructions about this
and other options, type
make -f pm_mac/Makefile.osx help
==== USING XCODE ====
Open portmidi/pm_mac/pm_mac.xcode with Xcode and
build what you need: if you are just exploring, start with
the lib+test suite.
[pm_mac.xcodeproj courtesy of Leigh Smith]
CHANGELOG
17-Jan-2007 Roger B. Dannenberg
Explicit instructions for Xcode
15-Jan-2007 Roger B. Dannenberg
Changed instructions because of changes to Makefile.osx
07-Oct-2006 Roger B. Dannenberg
Added directions for xcodebuild
29-aug-2006 Roger B. Dannenberg
Updated this documentation.
Supports