From 80e063c6bc53f407e2a76b7ba6809062ebad849e Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Sat, 14 Nov 2020 13:36:26 +0100 Subject: [PATCH] pulse-server: add duration to sample --- src/modules/module-protocol-pulse/pulse-server.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/modules/module-protocol-pulse/pulse-server.c b/src/modules/module-protocol-pulse/pulse-server.c index 354836c52..9941c1a75 100644 --- a/src/modules/module-protocol-pulse/pulse-server.c +++ b/src/modules/module-protocol-pulse/pulse-server.c @@ -3769,6 +3769,15 @@ error: return res; } +static uint64_t bytes_to_usec(uint64_t length, const struct sample_spec *ss) +{ + uint64_t u; + u = length / sample_spec_frame_size(ss); + u *= SPA_USEC_PER_SEC; + u /= ss->rate; + return u; +} + static int fill_sample_info(struct client *client, struct message *m, struct sample *sample) { @@ -3778,7 +3787,7 @@ static int fill_sample_info(struct client *client, struct message *m, TAG_U32, sample->index, TAG_STRING, sample->name, TAG_CVOLUME, &vol, - TAG_USEC, 0, /* length */ + TAG_USEC, bytes_to_usec(sample->length, &sample->ss), TAG_SAMPLE_SPEC, &sample->ss, TAG_CHANNEL_MAP, &sample->map, TAG_U32, sample->length,