Go to the documentation of this file.
25 #ifndef PIPEWIRE_BUFFERS_H
26 #define PIPEWIRE_BUFFERS_H
28 #include <spa/node/node.h>
37 #define PW_BUFFERS_FLAG_NONE 0
38 #define PW_BUFFERS_FLAG_NO_MEM (1<<0)
39 #define PW_BUFFERS_FLAG_SHARED (1<<1)
40 #define PW_BUFFERS_FLAG_DYNAMIC (1<<2)
50 struct spa_node *outnode, uint32_t out_port_id,
51 struct spa_node *innode, uint32_t in_port_id,
@ PW_MEMBLOCK_FLAG_READWRITE
Definition: mem.h:44
static uint32_t int int res
Definition: core.h:326
struct spa_param_info params[5]
Definition: filter.c:99
struct pw_memblock * mem
allocated buffer memory
Definition: buffers.h:43
#define pw_log_error(...)
#define MAX_ALIGN
Definition: buffers.c:41
@ PW_MEMBLOCK_FLAG_MAP
mmap the fd
Definition: mem.h:40
#define MAX_BLOCKS
Definition: buffers.c:42
#define PW_BUFFERS_FLAG_DYNAMIC
buffers have dynamic data
Definition: buffers.h:40
#define PW_KEY_CPU_MAX_ALIGN
maximum alignment needed to support all CPU optimizations
Definition: keys.h:78
SPA_EXPORT struct pw_memblock * pw_mempool_alloc(struct pw_mempool *pool, enum pw_memblock_flags flags, uint32_t type, size_t size)
Create a new memblock.
Definition: mem.c:460
int pw_buffers_negotiate(struct pw_context *context, uint32_t flags, struct spa_node *outnode, uint32_t out_port_id, struct spa_node *innode, uint32_t in_port_id, struct pw_buffers *result)
Definition: buffers.c:237
void * ptr
mapped pointer
Definition: mem.h:82
struct spa_node * node
Definition: buffers.c:45
#define NAME
Definition: buffers.c:39
@ PW_MEMBLOCK_FLAG_SEAL
seal the fd
Definition: mem.h:39
uint32_t n_buffers
number of port buffers
Definition: buffers.h:45
#define pw_log_debug(...)
#define PW_BUFFERS_FLAG_SHARED
buffers can be shared
Definition: buffers.h:39
struct pw_memmap * map
optional map when PW_MEMBLOCK_FLAG_MAP was given
Definition: mem.h:76
Definition: impl-port.c:1096
uint32_t flags
flags
Definition: buffers.h:46
uint32_t port_id
Definition: buffers.c:47
void pw_buffers_clear(struct pw_buffers *buffers)
Definition: buffers.c:355
const SPA_EXPORT char * pw_properties_get(const struct pw_properties *properties, const char *key)
Get a property.
Definition: properties.c:456
uint32_t flags
Definition: filter.c:91
#define PW_BUFFERS_FLAG_NO_MEM
don't allocate buffer memory
Definition: buffers.h:38
SPA_EXPORT int pw_buffers_negotiate(struct pw_context *context, uint32_t flags, struct spa_node *outnode, uint32_t out_port_id, struct spa_node *innode, uint32_t in_port_id, struct pw_buffers *result)
Definition: buffers.c:237
SPA_EXPORT void pw_buffers_clear(struct pw_buffers *buffers)
Definition: buffers.c:355
struct spa_buffer ** buffers
port buffers
Definition: buffers.h:44
struct buffer buffers[MAX_BUFFERS]
Definition: filter.c:103
enum spa_direction direction
Definition: buffers.c:46