impl-node: add rt_events

Remove the context_driver events and replace them with realtime node
events. The problem is that the realtime node events are emitted from
the node data thread, which can be different for each node and
aggregating them into context_driver events is not a good idea.

It's also nice for the stream drained event, which no longer needs to go
through the context_driver events.
This commit is contained in:
Wim Taymans 2023-07-17 11:41:03 +02:00
parent 5bac089229
commit cfd3bcd6b2
10 changed files with 161 additions and 114 deletions

View file

@ -1092,7 +1092,7 @@ static void node_on_data_fd_events(struct spa_source *source)
spa_node_call_ready(&impl->callbacks, status);
} else {
spa_log_trace_fp(impl->log, "%p: got complete", impl);
pw_context_driver_emit_complete(node->context, node);
pw_impl_node_rt_emit_complete(node);
}
}
}