static void reset_system_audio(size_t nframes) { size_t reset_size; unsigned int thread; const float zero = 0.; int i; reset_em = FALSE; for(thread = 0; thread < threadno; thread++) { reset_size = max (top[thread].jack.reset_size, nframes); ringb_float_reset (top[thread].jack.ring.i.l); ringb_float_reset (top[thread].jack.ring.i.r); ringb_float_reset (top[thread].jack.auxr.i.l); ringb_float_reset (top[thread].jack.auxr.i.r); if (top[thread].offset < 0) { for(i=top[thread].offset;i<0;i++) { ringb_float_write(top[thread].jack.ring.i.l,&zero,1); ringb_float_write(top[thread].jack.auxr.i.l,&zero,1); } } else { for(i=0;i<top[thread].offset;i++) { ringb_float_write(top[thread].jack.ring.i.r,&zero,1); ringb_float_write(top[thread].jack.auxr.i.r,&zero,1); } } ringb_float_restart (top[thread].jack.ring.o.r, reset_size); ringb_float_restart (top[thread].jack.ring.o.l, reset_size); ringb_float_restart (top[thread].jack.auxr.o.r, reset_size); ringb_float_restart (top[thread].jack.auxr.o.l, reset_size); } }
/* ---------------------------------------------------------------------------- */ void ringb_float_restart(ringb_float_t *rb, size_t nfloats) { ringb_float_reset(rb); ringb_float_clear(rb, nfloats); }