DroneBoxPatch()
  : mRamp(0.1)
  , mPrevCoarsePitch(-1.)
  , mPrevFinePitch(-1.)
  , mPrevDecay(-1.)
  {
    registerParameter(PARAMETER_A, "Coarse Pitch", "Coarse Pitch");
    registerParameter(PARAMETER_B, "Fine Pitch", "Fine Pitch");
    registerParameter(PARAMETER_C, "Decay", "Decay");
    registerParameter(PARAMETER_D, "Mix", "Mix");

    mOldValues[0] = 0.f; 
    mOldValues[1] = 0.f;
    mOldValues[2] = 0.f;
    mOldValues[3] = 0.f;
    
    for (int c=0;c<NUM_COMBS;c++)
    {
      AudioBuffer* buffer = createMemoryBuffer(2, BUF_SIZE);
      mCombs[c].setBuffer(buffer->getSamples(0), buffer->getSamples(1));
      mCombs[c].setSampleRate(getSampleRate());
      mCombs[c].clearBuffer();
    }
    
    mDCBlockerL.setSampleRate(getSampleRate());
    mDCBlockerR.setSampleRate(getSampleRate());
  }
Example #2
0
void computePresenceArrayForTupDataset(
  const RubiCLEnvironment* env,
  const RubiCLMemoryBuffer* fst_mem_struct,
  const RubiCLMemoryBuffer* snd_mem_struct,
  const RubiCLTask* task,
  RubiCLMemoryBuffer *presence
) {
    if (DEBUG) printf("computePresenceArrayForDataset\n");
  size_t g_work_size[1] = {fst_mem_struct->buffer_entries};

  /* Kernel's fst data_array set to be the given fst memory buffer */
  cl_int ret = clSetKernelArg(
    task->kernel,       // Kernel concerned
    0,                 // Index of argument to specify
    sizeof(cl_mem),    // Size of argument value
    &fst_mem_struct->buffer // Argument value
  );
  if (ret != CL_SUCCESS) printf("clSetKernelArg %s\n", oclErrorString(ret));

  /* Kernel's snd data_array set to be the given snd memory buffer */
  ret = clSetKernelArg(
    task->kernel,       // Kernel concerned
    1,                 // Index of argument to specify
    sizeof(cl_mem),    // Size of argument value
    &snd_mem_struct->buffer // Argument value
  );
  if (ret != CL_SUCCESS) printf("clSetKernelArg %s\n", oclErrorString(ret));

  /* Output buffer created to be an int flag for each element in input dataset. */
  presence->buffer_entries = fst_mem_struct->buffer_entries;
  presence->buffer = createMemoryBuffer(
    env,                                      // Environment struct
    (presence->buffer_entries * sizeof(int)), // Size of buffer to create
    CL_MEM_HOST_READ_ONLY                     // Buffer flags set
  );
  presence->type = INTEGER_BUFFER;

  /* Kernel's global presence_array set to be the newly created presence buffer */
  ret = clSetKernelArg(
    task->kernel,      // Kernel concerned
    2,                // Index of argument to specify
    sizeof(cl_mem),   // Size of argument value
    &presence->buffer // Argument value
  );
  if (ret != CL_SUCCESS) printf("clSetKernelArg PA %s\n", oclErrorString(ret));

  /* Kernel enqueued to be executed on the environment's command queue */
  ret = clEnqueueNDRangeKernel(
    env->queue,   // Device's command queue
    task->kernel, // Kernel to enqueue
    1,           // Dimensionality of work
    0,           // Global offset of work index
    g_work_size, // Array of work size in each dimension
    NULL,        // Local work size, omitted so will be deduced by OpenCL platform
    0,           // Number of preceding events
    NULL,        // Preceding events list
    NULL         // Event object destination
  );
  if (ret != CL_SUCCESS) printf("clEnqueueNDRangeKernel %s\n", oclErrorString(ret));
}
 FixedDelayPatch() {
   AudioBuffer* buffer = createMemoryBuffer(1, REQUEST_BUFFER_SIZE);
   delayBuffer.initialise(buffer->getSamples(0), buffer->getSize());
   registerParameter(PARAMETER_A, "Feedback");
   registerParameter(PARAMETER_B, "Mix");
   registerParameter(PARAMETER_C, "");    
   registerParameter(PARAMETER_D, "");    
 }
Example #4
0
    DubDelayPatch() {
        registerParameter(PARAMETER_A, "Time");
        registerParameter(PARAMETER_B, "Feedback");
        registerParameter(PARAMETER_C, "Tone");
        registerParameter(PARAMETER_D, "Wet");

        AudioBuffer* buffer = createMemoryBuffer(1, REQUEST_BUFFER_SIZE);
        delayBuffer.initialise(buffer->getSamples(0), REQUEST_BUFFER_SIZE);
    }
 SimpleDriveDelayPatch() : delay(0)
   {
   registerParameter(PARAMETER_A, "Delay");
   registerParameter(PARAMETER_B, "Feedback");
   registerParameter(PARAMETER_C, "Drive");
   registerParameter(PARAMETER_D, "Wet/Dry ");
   AudioBuffer* buffer = createMemoryBuffer(1, REQUEST_BUFFER_SIZE);
   delayBuffer.initialise(buffer->getSamples(0), buffer->getSize());
     }
Example #6
0
 FlangerPatch(){
   AudioBuffer* buffer = createMemoryBuffer(1, FLANGER_BUFFER_SIZE);
   delayBuffer.initialise(buffer->getSamples(0), buffer->getSize());
   registerParameter(PARAMETER_A, "Rate");
   registerParameter(PARAMETER_B, "Depth");
   registerParameter(PARAMETER_C, "Feedback");
   registerParameter(PARAMETER_D, "");    
   phase = 0;
 }
 SimpleDelayPatch() : delay(0), alpha(0.04), dryWet(0.f)
 {
   registerParameter(PARAMETER_A, "Delay");
   registerParameter(PARAMETER_B, "Feedback");
   registerParameter(PARAMETER_C, "");
   registerParameter(PARAMETER_D, "Dry/Wet");
   AudioBuffer* buffer = createMemoryBuffer(1, SIMPLE_DELAY_REQUEST_BUFFER_SIZE);
   delayBuffer.initialise(buffer->getSamples(0), buffer->getSize());
 }
Example #8
0
 LpfDelayPatch() : x1(0.0f), x2(0.0f), y1(0.0f), y2(0.0f), olddelaySamples(0.0f) {
   AudioBuffer* buffer = createMemoryBuffer(1, REQUEST_BUFFER_SIZE);
   delayBuffer.initialise(buffer->getSamples(0), buffer->getSize());
   registerParameter(PARAMETER_A, "Delay", "Delay time");
   registerParameter(PARAMETER_B, "Feedback", "Delay loop feedback");
   registerParameter(PARAMETER_C, "Fc", "Filter cutoff frequency");
   registerParameter(PARAMETER_D, "Dry/Wet", "Dry/wet mix");
   setCoeffs(getLpFreq()/getSampleRate(), 0.6f);
 }    
  BiasedDelayPatch() : MIN_DELAY(0.01), MAX_DELAY(4), MIN_BIAS(0.5), MED_BIAS(1), MAX_BIAS(3), ramp(0.1), circularBuffer(NULL) {
    registerParameter(PARAMETER_A, "Delay");
    registerParameter(PARAMETER_B, "Feedback");
    registerParameter(PARAMETER_C, "Bias");
    registerParameter(PARAMETER_D, "Dry/Wet");
    memset(oldVal, 0, sizeof(oldVal));

    AudioBuffer* buffer = createMemoryBuffer(1, MAX_DELAY * getSampleRate());
    bufferSize = buffer->getSize();    
    circularBuffer = buffer->getSamples(0);
  }
void *SingleThreadedOperation::initializeTileData(rcti *rect)
{
	if (this->m_cachedInstance) return this->m_cachedInstance;
	
	lockMutex();
	if (this->m_cachedInstance == NULL) {
		//
		this->m_cachedInstance = createMemoryBuffer(rect);
	}
	unlockMutex();
	return this->m_cachedInstance;
}
  MultiTapDelayPatch() {
    registerParameter(PARAMETER_A, "Delay");
    registerParameter(PARAMETER_B, "Feedback");
    registerParameter(PARAMETER_C, "Dry/Wet");
    registerParameter(PARAMETER_D, "Tap selector");
	
	
    AudioBuffer* audioBuffer = createMemoryBuffer(1, (int) (MAX_DELAY_MS / 1000) * getSampleRate());
    buffer = audioBuffer->getSamples(0);
    memset(buffer, 0, audioBuffer->getSize() *sizeof(float));

    bufferSize = audioBuffer->getSize();
	
    writeIndex = 0;
    currentDelay = 0;
    currentSelection = 0;
    delayInSamples = 0;

    computeVariables();
  }
Example #12
0
 SimpleDelayPatch() : delay(0), time(0.0) {
   AudioBuffer* buffer = createMemoryBuffer(1, REQUEST_BUFFER_SIZE);
   delayBuffer.initialise(buffer->getSamples(0), buffer->getSize());
 }