/*
 PlayBuf - sample player
 arguments:
  signal - a Signal buffer
  sigSampleRate - the sample rate of the signal
  playbackRate - 1.0 is normal, 2.0 is one octave up, 0.5 is one octave down
  offset - sample number to begin, or offset.
  loopstart - sample number of beginning of loop
  loopend - sample number of end of loop
  mul - multiply by signal or scalar
  add - add to signal or scalar
*/

PlayBuf : UGen {
 var signal;
 
 *ar { arg signal, sigSampleRate=44100.0, playbackRate=1.0, offset=0.0,
     loopstart=0.0, loopend, mul=1.0, add=0.0;
  ^this.multiChannelPerform('ar1', signal, sigSampleRate, playbackRate, offset,
     loopstart, loopend, mul, add)
 }
 *ar1 { arg signal, sigSampleRate=44100.0, playbackRate=1.0, offset=0.0,
     loopstart=0.0, loopend, mul=1.0, add=0.0;
  if (loopend.isNil, { loopend = signal.size - 2 });
  ^super.ar1.init(signal, sigSampleRate, playbackRate, offset,
     loopstart, loopend, mul, add)
 }
 
 init { arg theSignal ... theInputs;
  inputs = theInputs;
  signal = theSignal;
 }
}


RecordBuf : UGen {
 var signal;
 
 *ar { arg signal, in, recLevel=1.0, preLevel=0.0, reset=0.0, run=1.0, loopMode=0.0;
  ^this.multiChannelPerform('ar1', signal, in, recLevel, preLevel, reset, run, loopMode)
 }
 *ar1 { arg signal, in, recLevel=1.0, preLevel=0.0, reset=0.0, run=1.0, loopMode=0.0;
  ^super.ar1.init(signal, in, recLevel, preLevel, reset, run, loopMode)
 }
 init { arg argSignal ... theInputs;
  signal = argSignal;
  inputs = theInputs;
 }
}


This page was created by SimpleText2Html 1.0.3 on 22-Feb-100.