int main()
{
//Create an instance of Csound
Csound* csound = new Csound();

//compile instance of csound.
csound->Compile("test2.csd");

//prepare Csound for performance
csound->Start();

char tmp_string[4096] = {0};

//perform entire score
while(csound->PerformKsmps()==0)
{
    csound->GetStringChannel ("stringChannel", tmp_string);
    cout << tmp_string << " ";
}	

//free Csound object
delete csound;

return 0;
}
Пример #2
0
int main(int argc, char *argv[])
{
std::string orc = "sr=44100\n\
ksmps=32\n\
nchnls=2\n\
0dbfs=1\n\
\n\
instr 1\n\
aout vco2 0.5, 440\n\
outs aout, aout\n\
endin";
	
std::string sco = "i1 0 1";	
	
//create an instance of Csound
Csound* csound = new Csound();
//set CsOptions
csound->SetOption("-odac");

//compile orc
csound->CompileOrc(orc.c_str());

//compile sco
csound->ReadScore(sco.c_str());

//prepare Csound for performance
csound->Start();

//perform entire score
while(csound->PerformKsmps()==0);	

//free Csound object
delete csound;

return 0;
}
Пример #3
0
// Processing function
void CsoundPlugin::Process(unsigned long cnt){
  int pos, i, j, ksmps = csound->GetKsmps(),n = cnt;
  MYFLT scale = csound->Get0dBFS();

  for(i=0;i<ctlports;i++)
    csound->SetChannel(ctlchn[i].c_str(),
                       *(ctl[i]));

  if(!result){
    for(i=0; i < n; i++, frames++){
      if(frames == ksmps){

        result = csound->PerformKsmps();
        frames = 0;
      }
      for(j=0; j < chans; j++)
        if(!result){
          pos = frames*chans;
          spin[j+pos] =  inp[j][i]*scale;
          outp[j][i] = (LADSPA_Data) (spout[j+pos]/scale);
        } else outp[j][i] = 0;
     }
  }
}