pulse: count queued bytes

This commit is contained in:
Wim Taymans 2020-04-15 17:11:49 +02:00
parent bf95887a02
commit 262d0ee7d2
2 changed files with 5 additions and 2 deletions

View file

@ -367,6 +367,7 @@ struct pa_stream {
pa_timing_info timing_info; pa_timing_info timing_info;
uint64_t ticks_base; uint64_t ticks_base;
size_t queued_bytes;
uint32_t direct_on_input; uint32_t direct_on_input;

View file

@ -412,8 +412,9 @@ static void stream_control_info(void *data, uint32_t id, const struct pw_stream_
static void stream_add_buffer(void *data, struct pw_buffer *buffer) static void stream_add_buffer(void *data, struct pw_buffer *buffer)
{ {
pa_stream *s = data; pa_stream *s = data;
s->maxsize += buffer->buffer->datas[0].maxsize; buffer->size = buffer->buffer->datas[0].maxsize;
s->maxblock = SPA_MIN(buffer->buffer->datas[0].maxsize, s->maxblock); s->maxsize += buffer->size;
s->maxblock = SPA_MIN(buffer->size, s->maxblock);
} }
static void stream_remove_buffer(void *data, struct pw_buffer *buffer) static void stream_remove_buffer(void *data, struct pw_buffer *buffer)
@ -468,6 +469,7 @@ static void update_timing_info(pa_stream *s)
} }
ti->since_underrun = 0; ti->since_underrun = 0;
s->timing_info_valid = true; s->timing_info_valid = true;
s->queued_bytes = pwt.queued;
pw_log_debug("stream %p: %"PRIu64" rate:%d/%d ticks:%"PRIu64" pos:%"PRIu64" delay:%"PRIi64 " read:%"PRIu64 pw_log_debug("stream %p: %"PRIu64" rate:%d/%d ticks:%"PRIu64" pos:%"PRIu64" delay:%"PRIi64 " read:%"PRIu64
" write:%"PRIu64" queued:%"PRIi64, " write:%"PRIu64" queued:%"PRIi64,