From 2e86383aba37950c4d098fefe4b5484e6bc6ff62 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Mon, 11 May 2026 13:44:24 +0200 Subject: [PATCH] examples: set diffent Clock and Position on source Set a different Clock id and Position clock id on the testsrc so that it knows that it needs to be a follower. --- spa/examples/adapter-control.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/spa/examples/adapter-control.c b/spa/examples/adapter-control.c index 0a48f2fd4..eccba2fe8 100644 --- a/spa/examples/adapter-control.c +++ b/spa/examples/adapter-control.c @@ -94,6 +94,7 @@ struct data { struct spa_node *sink_follower_node; // alsa-pcm-sink struct spa_node *sink_node; // adapter for alsa-pcm-sink + struct spa_io_position source_position; struct spa_io_position position; struct spa_io_buffers source_sink_io[1]; struct spa_buffer *source_buffers[1]; @@ -687,6 +688,9 @@ static int make_nodes(struct data *data) data->position.clock.target_duration = 1024; data->position.clock.rate = data->position.clock.target_rate; data->position.clock.duration = data->position.clock.target_duration; + data->position.clock.id = 0; + data->source_position = data->position; + data->source_position.clock.id = 1; if ((res = spa_node_set_io(data->source_node, SPA_IO_Position, &data->position, sizeof(data->position))) < 0) { @@ -701,7 +705,7 @@ static int make_nodes(struct data *data) } if ((res = spa_node_set_io(data->source_node, SPA_IO_Clock, - &data->position.clock, sizeof(data->position.clock))) < 0) { + &data->source_position.clock, sizeof(data->source_position.clock))) < 0) { printf("can't set io clock on source node: %d\n", res); return res; }