4x8bit_del_read

4 channel 8bit delay read. Converts the 8bit channels back to four seperate, filtered 32bit channels
Author: Remco van der most
License: BSD
Github: sss/delay/4x8bit_del_read.axo

Inlets

frac32 delay time (fraction of total delayline size)

Outlets

frac32buffer wave

frac32buffer 2

frac32buffer 3

frac32buffer 4

Parameters

frac32.u.map time

Attributes

objref delayname

Declaration
int32_t val1;
int32_t val2;
int32_t val3;
int32_t val4;
Control Rate
uint32_t delay =
    attr_delayname.writepos -
    (__USAT(param_time + inlet_time, 27) >> (27 - attr_delayname.LENGTHPOW)) -
    BUFSIZE;
Audio Rate
int32_t outA = attr_delayname.array[(delay++) & attr_delayname.LENGTHMASK];

int32_t out1 = (outA >> 24) << 24;
int32_t out2 = ((outA - out1) >> 16) << 16;
int32_t out3 = ((outA - out1 - out2) >> 8) << 8;
int32_t out4 = (outA - out1 - out2 - out3);
val1 = val1 + ((out1 - val1) >> 2);
val2 = val2 + (((out2 << 8) - val2) >> 2);
val3 = val3 + (((out3 << 16) - val3) >> 2);
val4 = val4 + (((out4 << 24) - val4) >> 2);

outlet_1 = val1 >> 4;
outlet_2 = val2 >> 4;
outlet_3 = val3 >> 4;
outlet_4 = val4 >> 4;

Privacy

© 2024 Zrna Research