mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-06 13:30:01 -05:00
node: allocate shared mem for activation
Allocate a per node a piece of shared memory where we place the activation structure with the graph state and io_position. We can then give this info to nodes so that they can get the position in the graph directly but also later, activate the next node in the graph.
This commit is contained in:
parent
db230fc136
commit
658c1da52f
8 changed files with 83 additions and 89 deletions
|
|
@ -39,12 +39,13 @@ extern "C" {
|
|||
#include "pipewire/stream.h"
|
||||
#include "pipewire/log.h"
|
||||
|
||||
#include <spa/utils/type-info.h>
|
||||
|
||||
#ifndef spa_debug
|
||||
#define spa_debug pw_log_trace
|
||||
#endif
|
||||
|
||||
#include <spa/graph/graph.h>
|
||||
#include <spa/utils/type-info.h>
|
||||
|
||||
struct pw_command;
|
||||
|
||||
|
|
@ -298,7 +299,8 @@ struct pw_node_activation {
|
|||
uint64_t awake_time;
|
||||
uint64_t finish_time;
|
||||
|
||||
struct spa_graph_state state;
|
||||
struct spa_io_position position;
|
||||
struct spa_graph_state state[2]; /* one current state and one next state */
|
||||
};
|
||||
|
||||
#define pw_node_events_emit(o,m,v,...) spa_hook_list_call(&o->listener_list, struct pw_node_events, m, v, ##__VA_ARGS__)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue