Feed from link step

This commit is contained in:
Kamil Trzcinski 2022-04-06 17:18:48 +02:00
parent 19ba30d4ea
commit 6f8f66da59

View File

@ -64,13 +64,6 @@ int _build_fds(link_t *all_links, struct pollfd *fds, link_t **links, buffer_lis
if (source->device->output_device) { if (source->device->output_device) {
source->device->output_device->paused = paused; source->device->output_device->paused = paused;
} }
if (!source->device->paused && source->do_mmap) {
buffer_t *buf;
while (buf = buffer_list_find_slot(source)) {
buffer_consumed(buf, "enqueued");
}
}
int count_enqueued = buffer_list_count_enqueued(source); int count_enqueued = buffer_list_count_enqueued(source);
@ -171,6 +164,14 @@ int links_step(link_t *all_links, int timeout)
buf_list->nbufs, buf_list->nbufs,
buf_list->device->paused); buf_list->device->paused);
// feed capture queue
if (!buf_list->device->paused && buf_list->do_capture && buf_list->do_mmap) {
buffer_t *buf;
while (buf = buffer_list_find_slot(buf_list)) {
buffer_consumed(buf, "enqueued");
}
}
if (fds[i].revents & POLLIN) { if (fds[i].revents & POLLIN) {
if (links_enqueue_from_source(buf_list, link) < 0) { if (links_enqueue_from_source(buf_list, link) < 0) {
return -1; return -1;