/* * _cbl_pump_accel — ISR-насос CBL (путь ACCEL): зовёт fill() приложения * за очередным блоком; при недоливе — тишина через cbl_push_accel(), * если включён CBL_UNDERRUN_SILENCE. См. _cbl_pump_otir.c — та же * логика, отличается только способ выдачи (важно для 16-бит формата, * который OTIR собрать не может). */ #include "_cbl.h" void _cbl_pump_accel(void) { _cbl_reqs++; int ok = _cbl_fill ? _cbl_fill(_cbl_block) : 0; if (!ok) { _cbl_undr++; if (_cbl_underrun_mode == CBL_UNDERRUN_SILENCE && _cbl_silence) { cbl_push_accel(_cbl_silence, _cbl_block); } } }