mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-08 13:30:08 -05:00
WIP: work on per driver graphs
Make a graph per driver node and let nodes that link to this join this graph Work on an idea for an even simpler scheduling mechanism.
This commit is contained in:
parent
2d77c4dc34
commit
933635f63f
17 changed files with 325 additions and 239 deletions
|
|
@ -685,11 +685,14 @@ static int schedule_mix_output(struct spa_node *_node)
|
|||
struct spa_graph_port *gp;
|
||||
struct spa_io_buffers *io = port->rt.mix_port.io;
|
||||
|
||||
pw_log_trace("port %p", port);
|
||||
|
||||
spa_list_for_each(gp, &node->ports[SPA_DIRECTION_INPUT], link) {
|
||||
pw_log_trace("port %p: port %d %d %p->%p %d %d", port,
|
||||
gp->port_id, gp->flags, io, gp->io, io->status, io->buffer_id);
|
||||
gp->io->status = io->status;
|
||||
}
|
||||
io->status = SPA_STATUS_HAVE_BUFFER;
|
||||
return io->status;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -866,7 +866,7 @@ static int impl_node_process_input(struct spa_node *node)
|
|||
|
||||
/* explicitly recycle buffers when the client is not going to do it */
|
||||
if (!client_reuse && (pp = p->peer))
|
||||
spa_node_port_reuse_buffer(pp->node->implementation,
|
||||
spa_graph_node_reuse_buffer(pp->node,
|
||||
pp->port_id, io->buffer_id);
|
||||
}
|
||||
pw_log_trace("client-node %p: send process input", this);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue