diff --git a/spa/include/spa/buffer/buffer.h b/spa/include/spa/buffer/buffer.h index db52bc56d..09f012579 100644 --- a/spa/include/spa/buffer/buffer.h +++ b/spa/include/spa/buffer/buffer.h @@ -63,7 +63,9 @@ struct spa_chunk { /** Data for a buffer this stays constant for a buffer */ struct spa_data { - uint32_t type; /**< memory type, one of enum spa_data_type */ + uint32_t type; /**< memory type, one of enum spa_data_type, when + * allocating memory, the type contains a bitmask + * of allowed types */ #define SPA_DATA_FLAG_NONE 0 #define SPA_DATA_FLAG_READABLE (1u<<0) /**< data is readable */ #define SPA_DATA_FLAG_WRITABLE (1u<<1) /**< data is writable */ diff --git a/src/pipewire/buffers.c b/src/pipewire/buffers.c index f56f08dbc..4f685f7b9 100644 --- a/src/pipewire/buffers.c +++ b/src/pipewire/buffers.c @@ -103,6 +103,7 @@ static int alloc_buffers(struct pw_mempool *pool, d->maxsize = data_sizes[i]; SPA_FLAG_SET(d->flags, SPA_DATA_FLAG_READWRITE); } else { + /* type is a bitmask of allowed types */ d->type = SPA_ID_INVALID; d->maxsize = 0; }