buffer: remove buffer id

The buffer id is not needed/used, we use the index of the buffer in the
buffer array when configuring the port.
This commit is contained in:
Wim Taymans 2019-01-07 17:57:03 +01:00
parent e918f9f77c
commit 5b7ddb0105
33 changed files with 167 additions and 65 deletions

View file

@ -61,9 +61,10 @@ static void props_reset(struct props *props)
}
struct buffer {
struct spa_list link;
uint32_t id;
#define BUFFER_FLAG_OUT (1 << 0)
uint32_t flags;
struct spa_list link;
struct spa_buffer *outbuf;
struct spa_meta_header *h;
};
@ -959,6 +960,7 @@ impl_node_port_use_buffers(struct spa_node *node,
struct spa_data *d = buffers[i]->datas;
b = &port->buffers[i];
b->id = i;
b->flags = 0;
b->outbuf = buffers[i];
b->h = spa_buffer_find_meta_data(buffers[i], SPA_META_Header, sizeof(*b->h));
@ -1165,7 +1167,7 @@ static int impl_node_process(struct spa_node *node)
}
outio->status = SPA_STATUS_HAVE_BUFFER;
outio->buffer_id = dbuf->outbuf->id;
outio->buffer_id = dbuf->id;
inio->status = SPA_STATUS_NEED_BUFFER;

View file

@ -63,9 +63,10 @@ static void props_reset(struct props *props)
}
struct buffer {
struct spa_list link;
uint32_t id;
#define BUFFER_FLAG_OUT (1 << 0)
uint32_t flags;
struct spa_list link;
struct spa_buffer *outbuf;
struct spa_meta_header *h;
};
@ -676,6 +677,7 @@ impl_node_port_use_buffers(struct spa_node *node,
struct spa_data *d = buffers[i]->datas;
b = &port->buffers[i];
b->id = i;
b->flags = 0;
b->outbuf = buffers[i];
b->h = spa_buffer_find_meta_data(buffers[i], SPA_META_Header, sizeof(*b->h));
@ -882,7 +884,7 @@ static int impl_node_process(struct spa_node *node)
res |= SPA_STATUS_NEED_BUFFER;
outio->status = SPA_STATUS_HAVE_BUFFER;
outio->buffer_id = outb->id;
outio->buffer_id = outbuf->id;
res |= SPA_STATUS_HAVE_BUFFER;
return res;

View file

@ -47,6 +47,7 @@
#define MAX_PORTS 128
struct buffer {
uint32_t id;
#define BUFFER_FLAG_QUEUED (1<<0)
uint32_t flags;
struct spa_list link;
@ -740,7 +741,7 @@ static struct buffer *dequeue_buffer(struct impl *this, struct port *port)
spa_list_remove(&b->link);
SPA_FLAG_UNSET(b->flags, BUFFER_FLAG_QUEUED);
spa_log_trace(this->log, NAME " %p: dequeue buffer %d on port %d %u",
this, b->buf->id, port->id, b->flags);
this, b->id, port->id, b->flags);
return b;
}
@ -776,8 +777,9 @@ impl_node_port_use_buffers(struct spa_node *node,
struct spa_data *d = buffers[i]->datas;
b = &port->buffers[i];
b->buf = buffers[i];
b->id = i;
b->flags = 0;
b->buf = buffers[i];
if (!((d[0].type == SPA_DATA_MemPtr ||
d[0].type == SPA_DATA_MemFd ||
@ -895,7 +897,7 @@ static inline int get_out_buffer(struct impl *this, struct port *port, struct bu
return -EPIPE;
io->status = SPA_STATUS_HAVE_BUFFER;
io->buffer_id = (*buf)->buf->id;
io->buffer_id = (*buf)->id;
return 0;
}

View file

@ -59,9 +59,10 @@ static void props_reset(struct props *props)
}
struct buffer {
struct spa_list link;
uint32_t id;
#define BUFFER_FLAG_OUT (1 << 0)
uint32_t flags;
struct spa_list link;
struct spa_buffer *outbuf;
struct spa_meta_header *h;
};
@ -607,6 +608,7 @@ impl_node_port_use_buffers(struct spa_node *node,
struct spa_data *d = buffers[i]->datas;
b = &port->buffers[i];
b->id = i;
b->flags = 0;
b->outbuf = buffers[i];
b->h = spa_buffer_find_meta_data(buffers[i], SPA_META_Header, sizeof(*b->h));
@ -838,7 +840,7 @@ static int impl_node_process(struct spa_node *node)
outport->offset += out_len * sizeof(float);
if (outport->offset > 0 && outport->offset >= maxsize) {
outio->status = SPA_STATUS_HAVE_BUFFER;
outio->buffer_id = dbuf->outbuf->id;
outio->buffer_id = dbuf->id;
dequeue_buffer(this, dbuf);
outport->offset = 0;
SPA_FLAG_SET(res, SPA_STATUS_HAVE_BUFFER);

View file

@ -48,6 +48,7 @@
#define MAX_PORTS 128
struct buffer {
uint32_t id;
#define BUFFER_FLAG_QUEUED (1<<0)
uint32_t flags;
struct spa_list link;
@ -716,7 +717,7 @@ static struct buffer *dequeue_buffer(struct impl *this, struct port *port)
spa_list_remove(&b->link);
SPA_FLAG_UNSET(b->flags, BUFFER_FLAG_QUEUED);
spa_log_trace(this->log, NAME " %p: dequeue buffer %d on port %d %u",
this, b->buf->id, port->id, b->flags);
this, b->id, port->id, b->flags);
return b;
}
@ -751,6 +752,7 @@ impl_node_port_use_buffers(struct spa_node *node,
struct spa_data *d = buffers[i]->datas;
b = &port->buffers[i];
b->id = i;
b->buf = buffers[i];
b->flags = 0;
@ -923,7 +925,7 @@ static int impl_node_process(struct spa_node *node)
dd[j].chunk->size = n_samples * outport->stride;
}
outio->status = SPA_STATUS_HAVE_BUFFER;
outio->buffer_id = dbuf->buf->id;
outio->buffer_id = dbuf->id;
res |= SPA_STATUS_HAVE_BUFFER;
}