Просмотр исходного кода

cmDspPgmKr.c : Added input audio meters. The 'start' button now connects

to the 'availCh' 'reset' rather than 'trig'.  'AvailCh' 'reset' output
is connected to the 'Xfader' 'reset' input. The score location print out
now comes from the 'recent' score follower output.
master
kevin 11 лет назад
Родитель
Сommit
70fcc2d107
1 измененных файлов: 12 добавлений и 5 удалений
  1. 12
    5
      dsp/cmDspPgmKr.c

+ 12
- 5
dsp/cmDspPgmKr.c Просмотреть файл

@@ -110,6 +110,7 @@ cmDspRC_t _cmDspSysPgm_TimeLine(cmDspSysH_t h, void** userPtrPtr )
110 110
 
111 111
   cmDspInst_t* ai0p = cmDspSysAllocInst(h,"AudioIn",     NULL,  1, 0);
112 112
   cmDspInst_t* ai1p = cmDspSysAllocInst(h,"AudioIn",     NULL,  1, 1);
113
+
113 114
   cmDspInst_t* tlp  = cmDspSysAllocInst(h,"TimeLine",    "tl",  2, r.tlFn, r.tlPrefixPath );
114 115
   cmDspInst_t* scp  = cmDspSysAllocInst(h,"Score",       "sc",  1, r.scFn );
115 116
   cmDspInst_t* php  = cmDspSysAllocInst(h,"Phasor",      NULL,  1, cmDspSysSampleRate(h) );
@@ -295,6 +296,8 @@ cmDspRC_t _cmDspSysPgm_TimeLine(cmDspSysH_t h, void** userPtrPtr )
295 296
   cmDspInst_t* recdChk = cmDspSysAllocInst(h,"Button", "Record",     2, kCheckDuiId, 0.0 );
296 297
   cmDspInst_t* recdPtS = cmDspSysAllocInst(h,"GateToSym", NULL,      2, cmSymTblRegisterStaticSymbol(cmDspSysSymbolTable(h),"open"),cmSymTblRegisterStaticSymbol(cmDspSysSymbolTable(h),"close"));
297 298
   cmDspInst_t* afop    = cmDspSysAllocInst(h,"AudioFileOut",NULL,    2, r.recordDir,2);
299
+  cmDspInst_t* mi0p    = cmDspSysAllocInst(h,"AMeter","In 0",  0);
300
+  cmDspInst_t* mi1p    = cmDspSysAllocInst(h,"AMeter","In 1",  0);
298 301
   
299 302
   cmDspSysInstallCb(h, recdGain,"val", afop,    "gain0", NULL );
300 303
   cmDspSysInstallCb(h, recdGain,"val", afop,    "gain1", NULL );
@@ -370,12 +373,13 @@ cmDspRC_t _cmDspSysPgm_TimeLine(cmDspSysH_t h, void** userPtrPtr )
370 373
     return rc;
371 374
 
372 375
   cmDspSysConnectAudio(h, php,  "out",   wtp,  "phs" );     // phs -> wt
376
+
373 377
   cmDspSysConnectAudio(h, wtp,  "out",   au0Sw, "a-in-0" ); // wt  -> sw
374 378
   cmDspSysConnectAudio(h, ai0p, "out",   au0Sw, "a-in-1" ); // ain -> sw
379
+  cmDspSysConnectAudio(h, ai0p, "out",   mi0p,  "in" );
375 380
   cmDspSysConnectAudio(h, au0Sw,"a-out", kr00, "in"  );     // sw  -> kr
376 381
   cmDspSysConnectAudio(h, kr00, "out",   fad0, "in-0");     // kr  -> fad
377 382
   cmDspSysConnectAudio(h, fad0, "out-0", mix0, "in-0");     // fad -> mix
378
-
379 383
   cmDspSysConnectAudio(h, au0Sw,"a-out", kr01, "in"  );     // sw  -> kr
380 384
   cmDspSysConnectAudio(h, kr01, "out",   fad0, "in-1");     // kr  -> fad
381 385
   cmDspSysConnectAudio(h, fad0, "out-1", mix0, "in-1");     // fad -> mix
@@ -385,6 +389,7 @@ cmDspRC_t _cmDspSysPgm_TimeLine(cmDspSysH_t h, void** userPtrPtr )
385 389
 
386 390
   cmDspSysConnectAudio(h, wtp,  "out",   au1Sw, "a-in-0" );  // wt -> kr
387 391
   cmDspSysConnectAudio(h, ai1p, "out",   au1Sw, "a-in-1" );
392
+  cmDspSysConnectAudio(h, ai1p, "out",   mi1p,  "in" );
388 393
   cmDspSysConnectAudio(h, au1Sw,"a-out", kr10, "in"  );  
389 394
   cmDspSysConnectAudio(h, kr10, "out",   fad1, "in-0");
390 395
   cmDspSysConnectAudio(h, fad1, "out-0", mix1, "in-0");
@@ -431,8 +436,8 @@ cmDspRC_t _cmDspSysPgm_TimeLine(cmDspSysH_t h, void** userPtrPtr )
431 436
   cmDspSysInstallCb(h, wtRt,"s-out-0", wtp,   "cmd",   NULL );
432 437
   cmDspSysInstallCb(h, pts, "on",      modp,  "cmd",   NULL );
433 438
   cmDspSysInstallCb(h, onb, "sym",     amCmd, "rewind",NULL );
434
-  cmDspSysInstallCb(h, onb, "sym",     achan0,"trig",  NULL );
435
-  cmDspSysInstallCb(h, onb, "sym",     achan1,"trig",  NULL );
439
+  cmDspSysInstallCb(h, onb, "out",     achan0,"reset",  NULL );
440
+  cmDspSysInstallCb(h, onb, "out",     achan1,"reset",  NULL );
436 441
 
437 442
   // stop connections
438 443
   cmDspSysInstallCb(h, wtp,  "done",offb,"in",  NULL ); // 'done' from WT simulates pressing Stop btn.
@@ -487,8 +492,8 @@ cmDspRC_t _cmDspSysPgm_TimeLine(cmDspSysH_t h, void** userPtrPtr )
487 492
   cmDspSysInstallCb(h, mip, "status", sfp, "status", NULL );
488 493
 
489 494
   // score follower to modulator and printers
490
-  cmDspSysInstallCb(h, sfp, "out",  modp,    "index", NULL );
491
-  cmDspSysInstallCb(h, sfp, "out",  prp,     "in",  NULL );
495
+  cmDspSysInstallCb(h, sfp, "out",     modp,    "index", NULL );
496
+  cmDspSysInstallCb(h, sfp, "recent",  prp,     "in",  NULL );  // report 'recent' but only act on 'max' loc index
492 497
 
493 498
   cmDspSysInstallCb(h, prtb, "sym", sfp, "cmd", NULL );
494 499
   cmDspSysInstallCb(h, qtb,  "sym", sfp, "cmd", NULL );
@@ -595,11 +600,13 @@ cmDspRC_t _cmDspSysPgm_TimeLine(cmDspSysH_t h, void** userPtrPtr )
595 600
   cmDspSysInstallCb(h, amp,  "cost",  cost_sr_10, "val_in", NULL );
596 601
 
597 602
   // active-channel to cross-fade connections
603
+  cmDspSysInstallCb(h, achan0, "reset",   fad0, "reset", NULL);
598 604
   cmDspSysInstallCb(h, achan0, "gate-0",  fad0, "gate-0", NULL );
599 605
   cmDspSysInstallCb(h, achan0, "gate-1",  fad0, "gate-1", NULL );
600 606
   cmDspSysInstallCb(h, fad0,   "state-0", achan0, "dis-0",  NULL );
601 607
   cmDspSysInstallCb(h, fad0,   "state-1", achan0, "dis-1",  NULL );
602 608
 
609
+  cmDspSysInstallCb(h, achan1, "reset",   fad1, "reset", NULL);
603 610
   cmDspSysInstallCb(h, achan1, "gate-0",  fad1, "gate-0", NULL );
604 611
   cmDspSysInstallCb(h, achan1, "gate-1",  fad1, "gate-1", NULL );
605 612
   cmDspSysInstallCb(h, fad1,   "state-0", achan1, "dis-0",  NULL );

Загрузка…
Отмена
Сохранить