Public feed #378550

Stuff

public text v1 · immutable
Raw Edit
·published 2007-03-02 16:03 UTC
rendered paste body
2) better, process just 0-3 extra samples:
long sse_offset = (buffer_offset>>2)<<2;  // align offset
sampleFrames += buffer_offset - sse_offset; // add extra samples
long samplesLeft = sampleFrames & 3;
sampleFrames >>= 2;

Then process as usual (process SSE loop, process remaining 0-3 samples)
This is OK for non-recursive stuff.

3) For recursive stuff, unfortunately, first 0-3 samples are needed to 
be processed separately:
long sse_offset = (buffer_offset + 3 >> 2) << 2; // align offset
long nonSSEframes = sse_offset - buffer_offset; // how many samples before
sampleFrames -= nonSSEframes; // these are processed separately