Bläddra i källkod

cnDspPgmKr.c :

1) Added two new audio inputs (ai2p,ai3p) and mixers (mx0p,mx1p)
to allow contact mic's to be mixed with air mic's.
2) Added two new audio outputs (a02p,a03p) which are duplicates of
   ao0p and ao1p.
3) Added all pass filters to all four audio outputs to decorrelate output.
4) Added Bypass button to bypass the all pass filters.
master
Kevin Larke 10 år sedan
förälder
incheckning
56e36d78d6
1 ändrade filer med 94 tillägg och 28 borttagningar
  1. 94
    28
      dsp/cmDspPgmKr.c

+ 94
- 28
dsp/cmDspPgmKr.c Visa fil

@@ -213,8 +213,8 @@ void _cmDspSys_TlXformChain1( cmDspSysH_t h, cmDspTlXform_t* c,  unsigned preGrp
213 213
   cmDspInst_t* max_upr_ctl   = cmDspSysAllocScalarP( h,preGrpSymId, NULL, lbl("Max Upr"),         -1.0,  1.0, 0.001, 0.5);
214 214
   cmDspInst_t* min_lwr_ctl   = cmDspSysAllocScalarP( h,preGrpSymId, NULL, lbl("Min Lwr"),          0.0, -1.0, 5.0, 1.0);
215 215
   cmDspInst_t* max_lwr_ctl   = cmDspSysAllocScalarP( h,preGrpSymId, NULL, lbl("Max Lwr"),          0.0, -1.0, 5.0, 3.0);
216
-  cmDspInst_t* min_off_ctl   = cmDspSysAllocScalarP( h,preGrpSymId, NULL, lbl("Min Off"),          0.0, 50.0, 0.1, 30.0);
217
-  cmDspInst_t* max_off_ctl   = cmDspSysAllocScalarP( h,preGrpSymId, NULL, lbl("Max Off"),          0.0, 50.0, 0.1, 30.0);
216
+  cmDspInst_t* min_off_ctl   = cmDspSysAllocScalarP( h,preGrpSymId, NULL, lbl("Min Off"),       -100.0, 100.0, 0.1, 30.0);
217
+  cmDspInst_t* max_off_ctl   = cmDspSysAllocScalarP( h,preGrpSymId, NULL, lbl("Max Off"),       -100.0, 100.0, 0.1, 30.0);
218 218
   cmDspInst_t* min_wet_ctl   = cmDspSysAllocScalarP( h,preGrpSymId, NULL, lbl("Min Wet"),          0.0,  1.0, 0.01, 1.0);
219 219
   cmDspInst_t* max_wet_ctl   = cmDspSysAllocScalarP( h,preGrpSymId, NULL, lbl("Max Wet"),          0.0,  1.0, 0.01, 1.0);
220 220
 
@@ -634,12 +634,15 @@ void _cmDspSys_TlXformChain( cmDspSysH_t h, cmDspTlXform_t* c,  unsigned preGrpS
634 634
   cmDspSysInstallCb(h, modp, mlbl("thr"),  thr_ctl, "val", NULL );
635 635
   cmDspSysInstallCb(h, modp, mlbl("upr"),  upr_ctl, "val", NULL );
636 636
   cmDspSysInstallCb(h, modp, mlbl("lwr"),  lwr_ctl, "val", NULL );
637
+  cmDspSysInstallCb(h, modp, mlbl("off"),  off_ctl, "val", NULL );
637 638
   cmDspSysInstallCb(h, modp, mlbl("mint"), min_thr_ctl, "val", NULL );
638 639
   cmDspSysInstallCb(h, modp, mlbl("maxt"), max_thr_ctl, "val", NULL );
639 640
   cmDspSysInstallCb(h, modp, mlbl("minu"), min_upr_ctl, "val", NULL );
640 641
   cmDspSysInstallCb(h, modp, mlbl("maxu"), max_upr_ctl, "val", NULL );
641 642
   cmDspSysInstallCb(h, modp, mlbl("minl"), min_lwr_ctl, "val", NULL );
642 643
   cmDspSysInstallCb(h, modp, mlbl("maxl"), max_lwr_ctl, "val", NULL );
644
+  cmDspSysInstallCb(h, modp, mlbl("mino"), min_off_ctl, "val", NULL );
645
+  cmDspSysInstallCb(h, modp, mlbl("maxo"), max_off_ctl, "val", NULL );
643 646
   cmDspSysInstallCb(h, modp, mlbl("sw"),   achan,       "trig", NULL ); // See also: amp.sfloc->achan.trig
644 647
 
645 648
   c->achan = achan; 
@@ -671,6 +674,19 @@ cmDspRC_t _cmDspSysPgm_TimeLine(cmDspSysH_t h, void** userPtrPtr )
671 674
   double          recdPlayCurLaSecs        = 0.1;
672 675
   double          recdPlayFadeRateDbPerSec = 4.0;
673 676
 
677
+
678
+  bool            eqBypassFl  = false;
679
+  unsigned        eqModeSymId = cmSymTblRegisterStaticSymbol(cmDspSysSymbolTable(h),"LP");
680
+  double          eqF0hz      = 264.0;
681
+  double          eqQ         = 1.0;
682
+  double          eqGain     = 1.0;
683
+
684
+  bool            apfBypassFl  = false;
685
+  unsigned        apfModeSymId  = cmSymTblRegisterStaticSymbol(cmDspSysSymbolTable(h),"AP");
686
+  double          apfF0hz       = 100.0;
687
+  double          apfQ          = 1.0;
688
+  double          apfGain       = 1.0;
689
+
674 690
   /*
675 691
   bool            cmpBypassFl  = false;
676 692
   double          cmpInGain    = 3.0;
@@ -691,6 +707,19 @@ cmDspRC_t _cmDspSysPgm_TimeLine(cmDspSysH_t h, void** userPtrPtr )
691 707
 
692 708
   cmDspInst_t* ai0p = cmDspSysAllocInst(h,"AudioIn",     NULL,  1, 2);
693 709
   cmDspInst_t* ai1p = cmDspSysAllocInst(h,"AudioIn",     NULL,  1, 3);
710
+  cmDspInst_t* ai2p = cmDspSysAllocInst(h,"AudioIn",     NULL,  1, 4);
711
+  cmDspInst_t* ai3p = cmDspSysAllocInst(h,"AudioIn",     NULL,  1, 5);
712
+
713
+
714
+  //cmDspInst_t* ieq0 =  cmDspSysAllocInst(h,"BiQuadEq",NULL, 5, eqBypassFl, eqModeSymId,eqF0hz, eqQ, eqGain  ); 
715
+  //cmDspInst_t* ieq1 =  cmDspSysAllocInst(h,"BiQuadEq",NULL, 5, eqBypassFl, eqModeSymId,eqF0hz, eqQ, eqGain  ); 
716
+  //cmDspInst_t* ieq2 =  cmDspSysAllocInst(h,"BiQuadEq",NULL, 5, eqBypassFl, eqModeSymId,eqF0hz, eqQ, eqGain  ); 
717
+  //cmDspInst_t* ieq3 =  cmDspSysAllocInst(h,"BiQuadEq",NULL, 5, eqBypassFl, eqModeSymId,eqF0hz, eqQ, eqGain  ); 
718
+
719
+
720
+  cmDspInst_t* mx0p = cmDspSysAllocInst( h, "AMix",      NULL, 3, 2, 1.0, 1.0);
721
+  cmDspInst_t* mx1p = cmDspSysAllocInst( h, "AMix",      NULL, 3, 2, 1.0, 1.0);
722
+
694 723
 
695 724
   //cmDspInst_t* ci0p = cmDspSysAllocInst(h,"Compressor",  NULL,  8, cmpBypassFl, cmpThreshDb, cmpRatio_num, cmpAtkMs, cmpRlsMs, cmpMakeup, cmpWndMs, cmpWndMaxMs ); 
696 725
   //cmDspInst_t* ci1p = cmDspSysAllocInst(h,"Compressor",  NULL,  8, cmpBypassFl, cmpThreshDb, cmpRatio_num, cmpAtkMs, cmpRlsMs, cmpMakeup, cmpWndMs, cmpWndMaxMs ); 
@@ -791,11 +820,15 @@ cmDspRC_t _cmDspSysPgm_TimeLine(cmDspSysH_t h, void** userPtrPtr )
791 820
   }
792 821
   */
793 822
 
823
+  cmDspInst_t* apf0 =  cmDspSysAllocInst(h,"BiQuadEq",NULL, 5, apfBypassFl, apfModeSymId, apfF0hz+0, apfQ, apfGain  ); 
824
+  cmDspInst_t* apf1 =  cmDspSysAllocInst(h,"BiQuadEq",NULL, 5, apfBypassFl, apfModeSymId, apfF0hz+100.0, apfQ, apfGain  ); 
825
+  cmDspInst_t* apf2 =  cmDspSysAllocInst(h,"BiQuadEq",NULL, 5, apfBypassFl, apfModeSymId, apfF0hz+200.0, apfQ, apfGain  ); 
826
+  cmDspInst_t* apf3 =  cmDspSysAllocInst(h,"BiQuadEq",NULL, 5, apfBypassFl, apfModeSymId, apfF0hz+300.0, apfQ, apfGain  ); 
794 827
 
795 828
   cmDspInst_t* ao0p = cmDspSysAllocInst(h,"AudioOut",    NULL,   1, 0 );
796 829
   cmDspInst_t* ao1p = cmDspSysAllocInst(h,"AudioOut",    NULL,   1, 1 );
797
-  //cmDspInst_t* ao2p = cmDspSysAllocInst(h,"AudioOut",    NULL,   1, 2 );
798
-  //cmDspInst_t* ao3p = cmDspSysAllocInst(h,"AudioOut",    NULL,   1, 3 );
830
+  cmDspInst_t* ao2p = cmDspSysAllocInst(h,"AudioOut",    NULL,   1, 2 );
831
+  cmDspInst_t* ao3p = cmDspSysAllocInst(h,"AudioOut",    NULL,   1, 3 );
799 832
 
800 833
   cmDspSysNewPage(h,"Main");
801 834
   cmDspInst_t* liveb= cmDspSysAllocInst(h,"Button", "live",    2, kCheckDuiId,  0.0 );
@@ -831,9 +864,13 @@ cmDspRC_t _cmDspSysPgm_TimeLine(cmDspSysH_t h, void** userPtrPtr )
831 864
   cmDspSysNewColumn(h,0);
832 865
   cmDspInst_t* igain0 = cmDspSysAllocInst(h,"Scalar", "In Gain-0",    5, kNumberDuiId, 0.0,   100.0,0.01,   1.0 );  
833 866
   cmDspInst_t* igain1 = cmDspSysAllocInst(h,"Scalar", "In Gain-1",    5, kNumberDuiId, 0.0,   100.0,0.01,   1.0 );  
867
+  cmDspInst_t* igain2 = cmDspSysAllocInst(h,"Scalar", "In Gain-2",    5, kNumberDuiId, 0.0,   100.0,0.01,   1.0 );  
868
+  cmDspInst_t* igain3 = cmDspSysAllocInst(h,"Scalar", "In Gain-3",    5, kNumberDuiId, 0.0,   100.0,0.01,   1.0 );  
834 869
 
835 870
   cmDspInst_t* lasecs = cmDspSysAllocInst(h,"Scalar", "LA Secs",      5, kNumberDuiId, 0.0,   recdPlayMaxLaSecs,0.01,   recdPlayCurLaSecs );  
836 871
   cmDspInst_t* dbpsec = cmDspSysAllocInst(h,"Scalar", "Fade dBpSec",  5, kNumberDuiId, 0.0,   24.0, 0.01, recdPlayFadeRateDbPerSec);
872
+  cmDspInst_t* apfByp = cmDspSysAllocCheck(  h, "APF-Bypass", 0.0 );
873
+
837 874
   cmDspInst_t* ogain0 = cmDspSysAllocInst(h,"Scalar", "Out Gain-0",   5, kNumberDuiId, 0.0,   10.0,0.01,   1.0 );  
838 875
   cmDspInst_t* ogain1 = cmDspSysAllocInst(h,"Scalar", "Out Gain-1",   5, kNumberDuiId, 0.0,   10.0,0.01,   1.0 );  
839 876
   cmDspInst_t* ogain2 = cmDspSysAllocInst(h,"Scalar", "Out Gain-2",   5, kNumberDuiId, 0.0,   10.0,0.01,   1.0 );  
@@ -849,6 +886,7 @@ cmDspRC_t _cmDspSysPgm_TimeLine(cmDspSysH_t h, void** userPtrPtr )
849 886
   cmDspInst_t* mi0p    = cmDspSysAllocInst(h,"AMeter","In 0",  0);
850 887
   cmDspInst_t* mi1p    = cmDspSysAllocInst(h,"AMeter","In 1",  0);
851 888
 
889
+
852 890
   if((rc = cmDspSysLastRC(h)) != kOkDspRC )
853 891
     return rc;
854 892
 
@@ -863,10 +901,15 @@ cmDspRC_t _cmDspSysPgm_TimeLine(cmDspSysH_t h, void** userPtrPtr )
863 901
   // Audio connections
864 902
   cmDspSysConnectAudio(h, php,  "out",   wtp,  "phs" );     // phs -> wt
865 903
 
904
+  cmDspSysConnectAudio(h, ai0p, "out", mx0p, "in-0" );
905
+  cmDspSysConnectAudio(h, ai1p, "out", mx1p, "in-0" );
906
+  cmDspSysConnectAudio(h, ai2p, "out", mx0p, "in-1" );
907
+  cmDspSysConnectAudio(h, ai3p, "out", mx1p, "in-1" );
908
+
866 909
   if( useWtFl )
867 910
   {
868 911
     cmDspSysConnectAudio(h, wtp,    "out",   au0Sw, "a-in-0" ); // wt  -> sw
869
-    cmDspSysConnectAudio(h, ai0p,   "out",   au0Sw, "a-in-1" );      // ain -> sw
912
+    cmDspSysConnectAudio(h, mx0p,   "out",   au0Sw, "a-in-1" );      // ain -> sw
870 913
     //cmDspSysConnectAudio(h, ci0p,   "out",   au0Sw, "a-in-1" );
871 914
     cmDspSysConnectAudio(h, au0Sw,  "a-out", rpp,   "in-0");    // sw  -> rcdply
872 915
     cmDspSysConnectAudio(h, au0Sw,  "a-out", c0.kr0,"in"  );    // sw  -> kr
@@ -875,10 +918,10 @@ cmDspRC_t _cmDspSysPgm_TimeLine(cmDspSysH_t h, void** userPtrPtr )
875 918
   }
876 919
   else
877 920
   {
878
-    cmDspSysConnectAudio(h, ai0p,  "out", rpp,   "in-0");    // sw  -> rcdply
879
-    cmDspSysConnectAudio(h, ai0p,   "out",   c0.kr0, "in" ); // ain -> sw
880
-    //cmDspSysConnectAudio(h, ai0p,   "out",   c0.kr1, "in" ); // ain -> sw
881
-    cmDspSysConnectAudio(h, ai0p,   "out",   mi0p,  "in" );     
921
+    cmDspSysConnectAudio(h, mx0p,  "out", rpp,   "in-0");    // sw  -> rcdply
922
+    cmDspSysConnectAudio(h, mx0p,   "out",   c0.kr0, "in" ); // ain -> sw
923
+    //cmDspSysConnectAudio(h, mx0p,   "out",   c0.kr1, "in" ); // ain -> sw
924
+    cmDspSysConnectAudio(h, mx0p,   "out",   mi0p,  "in" );     
882 925
   }
883 926
 
884 927
   if( fragFl )
@@ -887,12 +930,18 @@ cmDspRC_t _cmDspSysPgm_TimeLine(cmDspSysH_t h, void** userPtrPtr )
887 930
     cmDspSysConnectAudio(h, rpp,    "out-0", c2.kr0,"in" );
888 931
     //cmDspSysConnectAudio(h, rpp,    "out-0", c2.kr1,"in" );
889 932
     cmDspSysConnectAudio(h, c2.cmp, "out",   mix0,  "in-1");    // rpp -> mix 1
890
-    cmDspSysConnectAudio(h, mix0,   "out",   ao0p,  "in" );     // mix -> aout
933
+    cmDspSysConnectAudio(h, mix0,   "out",   apf0,  "in" );     // mix -> aout
934
+    cmDspSysConnectAudio(h, apf0,  "out",   ao0p,  "in" );
935
+
891 936
   }
892 937
   else
893 938
   {
894
-    cmDspSysConnectAudio(h, c0.cmp, "out", ao0p, "in" );
895
-    //cmDspSysConnectAudio(h, wtp, "out", ao0p, "in" );
939
+    cmDspSysConnectAudio(h, c0.cmp, "out", apf0, "in" );
940
+    cmDspSysConnectAudio(h, c0.cmp, "out", apf2, "in" );
941
+    cmDspSysConnectAudio(h, apf0,  "out", ao0p,  "in" );
942
+    cmDspSysConnectAudio(h, apf2,  "out", ao2p,  "in" );
943
+
944
+    //cmDspSysConnectAudio(h, wtp, "out", apf0, "in" );
896 945
   }
897 946
 
898 947
 
@@ -901,7 +950,7 @@ cmDspRC_t _cmDspSysPgm_TimeLine(cmDspSysH_t h, void** userPtrPtr )
901 950
     if( useWtFl )
902 951
     {
903 952
       cmDspSysConnectAudio(h, wtp,    "out",   au1Sw, "a-in-0" ); // wt  -> sw
904
-      cmDspSysConnectAudio(h, ai1p,   "out",   au1Sw, "a-in-1" ); // ain -> sw
953
+      cmDspSysConnectAudio(h, mx1p,   "out",   au1Sw, "a-in-1" ); // ain -> sw
905 954
       //cmDspSysConnectAudio(h, ci1p,   "out",   au1Sw, "a-in-1" ); 
906 955
       cmDspSysConnectAudio(h, au1Sw,  "a-out", rpp,   "in-1");    // sw  -> rcdply
907 956
       cmDspSysConnectAudio(h, au1Sw,  "a-out", c1.kr0,"in"  );    // sw  -> kr
@@ -910,10 +959,10 @@ cmDspRC_t _cmDspSysPgm_TimeLine(cmDspSysH_t h, void** userPtrPtr )
910 959
     }
911 960
     else
912 961
     {
913
-      cmDspSysConnectAudio(h, ai1p,  "out", rpp,   "in-1");    // sw  -> rcdply
914
-      cmDspSysConnectAudio(h, ai1p,   "out",   c1.kr0, "in" ); // ain -> sw
915
-      //cmDspSysConnectAudio(h, ai1p,   "out",   c1.kr1, "in" ); // ain -> sw
916
-      cmDspSysConnectAudio(h, ai1p,   "out",   mi1p,  "in" );
962
+      cmDspSysConnectAudio(h, mx1p,  "out", rpp,   "in-1");    // sw  -> rcdply
963
+      cmDspSysConnectAudio(h, mx1p,   "out",   c1.kr0, "in" ); // ain -> sw
964
+      //cmDspSysConnectAudio(h, mx1p,   "out",   c1.kr1, "in" ); // ain -> sw
965
+      cmDspSysConnectAudio(h, mx1p,   "out",   mi1p,  "in" );
917 966
     }
918 967
 
919 968
     if( fragFl )
@@ -922,12 +971,18 @@ cmDspRC_t _cmDspSysPgm_TimeLine(cmDspSysH_t h, void** userPtrPtr )
922 971
       cmDspSysConnectAudio(h, rpp,    "out-1", c3.kr0, "in" );
923 972
       //cmDspSysConnectAudio(h, rpp,    "out-1", c3.kr1, "in" );
924 973
       cmDspSysConnectAudio(h, c3.cmp, "out",   mix1,   "in-1");    // rpp -> mix 1
925
-      cmDspSysConnectAudio(h, mix1,   "out",   ao1p,   "in" );     // mix -> aout
974
+      cmDspSysConnectAudio(h, mix1,   "out",   apf1,   "in" );     // mix -> aout
975
+      cmDspSysConnectAudio(h, apf1,  "out",   ao1p,   "in" );
976
+
926 977
     }
927 978
     else
928 979
     {
929
-      cmDspSysConnectAudio(h, c1.cmp, "out",   ao1p,  "in" );   // cmp -> mix 0
930
-      //cmDspSysConnectAudio(h, wtp, "out", ao1p, "in" );
980
+      cmDspSysConnectAudio(h, c1.cmp, "out",   apf1,  "in" );   // cmp -> mix 0
981
+      cmDspSysConnectAudio(h, c1.cmp, "out",   apf3,  "in" );   // cmp -> mix 0
982
+      cmDspSysConnectAudio(h, apf1,  "out",   ao1p,   "in" );
983
+      cmDspSysConnectAudio(h, apf3,  "out",   ao3p,   "in" );
984
+      
985
+      //cmDspSysConnectAudio(h, wtp, "out", apf1, "in" );
931 986
 
932 987
     }
933 988
   }
@@ -1082,38 +1137,41 @@ cmDspRC_t _cmDspSysPgm_TimeLine(cmDspSysH_t h, void** userPtrPtr )
1082 1137
   cmDspSysInstallCb(h, scp, "sel",    prp, "in", NULL );
1083 1138
 
1084 1139
   // NOTE: THIS IS A DUPLICATE OF THE scp.sel CONNECTIONS
1140
+  /*
1085 1141
   cmDspSysInstallCb(h, scLoc, "val",    sfp, "index",  NULL );
1086 1142
   cmDspSysInstallCb(h, scLoc, "val",    modp,"reset", NULL );
1087 1143
   cmDspSysInstallCb(h, scLoc, "val",    modr,"reset", NULL );
1088 1144
   cmDspSysInstallCb(h, scLoc, "val",    rpp, "initIdx", NULL );
1089 1145
   cmDspSysInstallCb(h, scLoc, "val",    prp, "in", NULL );
1146
+  */
1090 1147
 
1091 1148
   //cmDspSysInstallCb(h, reload,"out",  modp, "reload", NULL );
1092 1149
 
1093 1150
 
1094 1151
   // MIDI file player to score follower
1095 1152
   cmDspSysInstallCb(h, mfp,  "smpidx",  siRt, "f-in",NULL );
1096
-  cmDspSysInstallCb(h, siRt, "f-out-0", sfp,  "smpidx",NULL ); 
1153
+  cmDspSysInstallCb(h, siRt, "f-out-1", sfp,  "smpidx",NULL ); 
1097 1154
   // leave siRt.f-out-1 unconnected because it should be ignored in 'simulate mode'
1098 1155
 
1099 1156
   cmDspSysInstallCb(h, mfp,  "d1",      d1Rt, "f-in",  NULL );
1100
-  cmDspSysInstallCb(h, d1Rt, "f-out-0", sfp,  "d1",    NULL );
1157
+  cmDspSysInstallCb(h, d1Rt, "f-out-1", sfp,  "d1",    NULL );
1101 1158
   cmDspSysInstallCb(h, d1Rt, "f-out-1", nmp,  "d1",    NULL );
1102 1159
   cmDspSysInstallCb(h, nmp,   "d1",     mop,  "d1",    NULL );
1103 1160
   cmDspSysInstallCb(h, nmp,   "d1",     mo2p,  "d1",    NULL );
1104 1161
 
1105 1162
   cmDspSysInstallCb(h, mfp,  "d0",      d0Rt,  "f-in", NULL );
1106
-  cmDspSysInstallCb(h, d0Rt, "f-out-0", sfp,   "d0",   NULL );
1163
+  cmDspSysInstallCb(h, d0Rt, "f-out-1", sfp,   "d0",   NULL );
1107 1164
   cmDspSysInstallCb(h, d0Rt, "f-out-1", nmp,  "d0",   NULL );
1108 1165
   cmDspSysInstallCb(h, nmp,  "d0",      mop,  "d0",   NULL );
1109 1166
   cmDspSysInstallCb(h, nmp,  "d0",      mo2p,  "d0",   NULL );
1110 1167
 
1111 1168
   cmDspSysInstallCb(h, mfp, "status",   stRt, "f-in",  NULL );
1112
-  cmDspSysInstallCb(h, stRt, "f-out-0", sfp,  "status",NULL );
1169
+  cmDspSysInstallCb(h, stRt, "f-out-1", sfp,  "status",NULL );
1113 1170
   cmDspSysInstallCb(h, stRt, "f-out-1", nmp,  "status",NULL );
1114 1171
   cmDspSysInstallCb(h, nmp,  "status",  mop,  "status",NULL );
1115 1172
   cmDspSysInstallCb(h, nmp,  "status",  mo2p,  "status",NULL );
1116 1173
 
1174
+
1117 1175
   // MIDI input port
1118 1176
   //cmDspSysInstallCb(h, mip, "smpidx", sfp, "smpidx", NULL );
1119 1177
   //cmDspSysInstallCb(h, mip, "d1",     sfp, "d1",     NULL );
@@ -1122,9 +1180,9 @@ cmDspRC_t _cmDspSysPgm_TimeLine(cmDspSysH_t h, void** userPtrPtr )
1122 1180
 
1123 1181
   // score follower to recd_play,modulator and printers
1124 1182
   //cmDspSysInstallCb(h, sfp, "out",     rpp,     "index", NULL );
1125
-  //cmDspSysInstallCb(h, sfp, "out",     modp,    "index", NULL );
1183
+  cmDspSysInstallCb(h, sfp, "out",     modp,    "index", NULL );
1126 1184
   //cmDspSysInstallCb(h, sfp, "out",     modr,    "index", NULL );
1127
-  //cmDspSysInstallCb(h, sfp, "recent",  prp,     "in",  NULL );  // report 'recent' but only act on 'max' loc index
1185
+  cmDspSysInstallCb(h, sfp, "recent",  prp,     "in",  NULL );  // report 'recent' but only act on 'max' loc index
1128 1186
 
1129 1187
   //cmDspSysInstallCb(h, prtb, "sym", sfp, "cmd", NULL );
1130 1188
   //cmDspSysInstallCb(h, qtb,  "sym", sfp, "cmd", NULL );
@@ -1135,6 +1193,8 @@ cmDspRC_t _cmDspSysPgm_TimeLine(cmDspSysH_t h, void** userPtrPtr )
1135 1193
 
1136 1194
   cmDspSysInstallCb(h, igain0, "val", ai0p, "gain", NULL );   // input gain control
1137 1195
   cmDspSysInstallCb(h, igain1, "val", ai1p, "gain", NULL );
1196
+  cmDspSysInstallCb(h, igain2, "val", ai2p, "gain", NULL );   // input gain control
1197
+  cmDspSysInstallCb(h, igain3, "val", ai3p, "gain", NULL );
1138 1198
 
1139 1199
   if( fragFl )
1140 1200
   {
@@ -1144,10 +1204,16 @@ cmDspRC_t _cmDspSysPgm_TimeLine(cmDspSysH_t h, void** userPtrPtr )
1144 1204
     cmDspSysInstallCb(h, mutr,   "out", mix1, "gain-1", NULL );
1145 1205
   }
1146 1206
 
1207
+  cmDspSysInstallCb(h, apfByp, "out", apf0, "bypass", NULL );   // APF bypass
1208
+  cmDspSysInstallCb(h, apfByp, "out", apf1, "bypass", NULL );   // 
1209
+  cmDspSysInstallCb(h, apfByp, "out", apf2, "bypass", NULL );   // 
1210
+  cmDspSysInstallCb(h, apfByp, "out", apf3, "bypass", NULL );   // 
1211
+
1212
+
1147 1213
   cmDspSysInstallCb(h, ogain0, "val", ao0p, "gain", NULL );   // output gain control
1148 1214
   cmDspSysInstallCb(h, ogain1, "val", ao1p, "gain", NULL );
1149
-  //cmDspSysInstallCb(h, ogain2, "val", ao2p, "gain", NULL );
1150
-  //cmDspSysInstallCb(h, ogain3, "val", ao3p, "gain", NULL );
1215
+  cmDspSysInstallCb(h, ogain2, "val", ao2p, "gain", NULL );
1216
+  cmDspSysInstallCb(h, ogain3, "val", ao3p, "gain", NULL );
1151 1217
 
1152 1218
   return rc;
1153 1219
 }

Laddar…
Avbryt
Spara