earliest multi-chip support

no saving, no adding chips yet...
only the beginning
This commit is contained in:
tildearrow 2022-01-08 17:15:12 -05:00
parent 7080434ed4
commit 06c7ac92a2
6 changed files with 129 additions and 97 deletions

View file

@ -17,6 +17,32 @@ void DivDispatchContainer::setRates(double gotRate) {
blip_set_rates(bb[1],dispatch->rate,gotRate);
}
void DivDispatchContainer::acquire(size_t offset, size_t count) {
dispatch->acquire(bbIn[0],bbIn[1],offset,count);
}
void DivDispatchContainer::fillBuf(size_t runtotal, size_t size) {
for (size_t i=0; i<runtotal; i++) {
temp[0]=bbIn[0][i];
blip_add_delta(bb[0],i,temp[0]-prevSample[0]);
prevSample[0]=temp[0];
}
if (dispatch->isStereo()) for (size_t i=0; i<runtotal; i++) {
temp[1]=bbIn[1][i];
blip_add_delta(bb[1],i,temp[1]-prevSample[1]);
prevSample[1]=temp[1];
}
blip_end_frame(bb[0],runtotal);
blip_read_samples(bb[0],bbOut[0],size,0);
if (dispatch->isStereo()) {
blip_end_frame(bb[1],runtotal);
blip_read_samples(bb[1],bbOut[1],size,0);
}
}
void DivDispatchContainer::clear() {
blip_clear(bb[0]);
blip_clear(bb[1]);