delay write kt sec

delayline definition, read it with "delay/read" objects referencing the instance name of this object with ms output
Author: Johannes Taelman
License: BSD
Github: phi/delay/delay write kt sec.axo

Inlets

frac32buffer wave input

Outlets

int32 kticks

frac32 sec

Attributes

combo size

Declaration
static const uint32_t LENGTHPOW = (attr_size);
static const uint32_t LENGTH = (1 << attr_size);
static const uint32_t LENGTHMASK = ((1 << attr_size) - 1);
int16_t *array;
uint32_t writepos;
Init
static int16_t _array[attr_poly][1 << attr_size]
    __attribute__((section(".sdram")));
array = &_array[parent->polyIndex][0];
int i;
writepos = 0;
for (i = 0; i < LENGTH; i++)
  array[i] = 0;
Control Rate
outlet_kticks = (pow(2, (2 ^ attr_size) - 2));
outlet_sec = (((int)(281474976710656.f / 3000) >> 20) * (outlet_kticks) / 3);
Audio Rate
writepos = (writepos + 1) & LENGTHMASK;
array[writepos] = __SSAT(inlet_in >> 14, 16);

Privacy

© 2024 Zrna Research