sendspin: add sendspin sender and receiver

The sender makes an input stream for each connected client. This makes
it easier to do the per client conversion using the adapter and send
different channels to clients.

The receiver uses linear regression to map ringbuffer indexes to server
timestamps and server timestamps to client timestamps. It can then
schedule playback against its own clock.
This commit is contained in:
Wim Taymans 2026-02-04 13:32:12 +01:00
parent 6daa8ccc0d
commit d6654e84a7
11 changed files with 4644 additions and 2 deletions

View file

@ -262,7 +262,6 @@ SPA_API_JSON_BUILDER void spa_json_builder_object_uint(struct spa_json_builder *
snprintf(str, sizeof(str), "%" PRIu64, val);
spa_json_builder_add_simple(b, key, INT_MAX, 'd', str, INT_MAX);
}
SPA_API_JSON_BUILDER void spa_json_builder_object_double(struct spa_json_builder *b,
const char *key, double val)
{
@ -270,7 +269,6 @@ SPA_API_JSON_BUILDER void spa_json_builder_object_double(struct spa_json_builder
spa_json_format_float(str, sizeof(str), (float)val);
spa_json_builder_add_simple(b, key, INT_MAX, 'd', str, INT_MAX);
}
SPA_API_JSON_BUILDER void spa_json_builder_object_string(struct spa_json_builder *b,
const char *key, const char *val)
{