graph: new scheduling model

Make explicit links between elements that are used to activate the
next element in the graph.
Make subgraphs a special regular node. Make a link from the
subgraph children to the parent so that the subgraph completes when
all the children completed.
Implement a single process function in plugins
Remove many messages in the client node
This commit is contained in:
Wim Taymans 2018-03-20 11:37:11 +01:00
parent 9b0a880afb
commit 33a322b96e
36 changed files with 401 additions and 750 deletions

View file

@ -437,12 +437,7 @@ spa_ffmpeg_dec_node_port_set_io(struct spa_node *node,
return 0;
}
static int spa_ffmpeg_dec_node_process_input(struct spa_node *node)
{
return -EINVAL;
}
static int spa_ffmpeg_dec_node_process_output(struct spa_node *node)
static int spa_ffmpeg_dec_node_process(struct spa_node *node)
{
struct impl *this;
struct port *port;
@ -508,8 +503,7 @@ static const struct spa_node ffmpeg_dec_node = {
spa_ffmpeg_dec_node_port_set_io,
spa_ffmpeg_dec_node_port_reuse_buffer,
spa_ffmpeg_dec_node_port_send_command,
spa_ffmpeg_dec_node_process_input,
spa_ffmpeg_dec_node_process_output,
spa_ffmpeg_dec_node_process,
};
static int