예제 #1
0
bool EffectLeveller::ProcessSimpleMono(float *buffer, sampleCount len)
{
   for (int pass = 0; pass < mLevellerNumPasses; ++pass) {
      for (int i = 0; i < len; ++i) {
         buffer[i] = LevelOneFrame(buffer[i]);
      }
   }
   return true;
}
예제 #2
0
sampleCount EffectLeveller::ProcessBlock(float **inBlock, float **outBlock, sampleCount blockLen)
{
   float *ibuf = inBlock[0];
   float *obuf = outBlock[0];
   
   for (sampleCount i = 0; i < blockLen; i++)
   {
      float frame = ibuf[i];
      for (int pass = 0; pass < mNumPasses; pass++)
      {
         frame = LevelOneFrame(frame);
      }
      obuf[i] = frame;
   }

   return blockLen;
}