diff --git a/src/pipewire/node.c b/src/pipewire/node.c index dc05a4108..bbd3dea1b 100644 --- a/src/pipewire/node.c +++ b/src/pipewire/node.c @@ -1022,6 +1022,9 @@ static void node_info(void *data, const struct spa_node_info *info) node, info->change_mask, info->max_input_ports, info->max_output_ports); + if (info->change_mask & SPA_NODE_CHANGE_MASK_FLAGS) { + node->spa_flags = info->flags; + } if (info->change_mask & SPA_NODE_CHANGE_MASK_PROPS) { update_properties(node, info->props); } diff --git a/src/pipewire/private.h b/src/pipewire/private.h index 300e9161a..fc70a8554 100644 --- a/src/pipewire/private.h +++ b/src/pipewire/private.h @@ -395,6 +395,8 @@ struct pw_node { struct pw_node_info info; /**< introspectable node info */ struct spa_param_info params[MAX_PARAMS]; + uint32_t spa_flags; + unsigned int registered:1; unsigned int active:1; /**< if the node is active */ unsigned int live:1; /**< if the node is live */