diff --git a/0001-pulse-server-add-channel-map-in-echo-cancel-module.patch b/0001-pulse-server-add-channel-map-in-echo-cancel-module.patch new file mode 100644 index 0000000..00a9828 --- /dev/null +++ b/0001-pulse-server-add-channel-map-in-echo-cancel-module.patch @@ -0,0 +1,39 @@ +From f7c49bbdde5f9f09270ac391990264a501761420 Mon Sep 17 00:00:00 2001 +From: Wim Taymans +Date: Thu, 15 Dec 2022 13:12:47 +0100 +Subject: [PATCH] pulse-server: add channel-map in echo-cancel module + +--- + .../module-protocol-pulse/modules/module-echo-cancel.c | 9 ++++++++- + 1 file changed, 8 insertions(+), 1 deletion(-) + +diff --git a/src/modules/module-protocol-pulse/modules/module-echo-cancel.c b/src/modules/module-protocol-pulse/modules/module-echo-cancel.c +index 47dfa75bb..72e0095b5 100644 +--- a/src/modules/module-protocol-pulse/modules/module-echo-cancel.c ++++ b/src/modules/module-protocol-pulse/modules/module-echo-cancel.c +@@ -70,6 +70,7 @@ static int module_echo_cancel_load(struct module *module) + const char *str; + char *args; + size_t size; ++ uint32_t i; + + if ((f = open_memstream(&args, &size)) == NULL) + return -errno; +@@ -85,7 +86,13 @@ static int module_echo_cancel_load(struct module *module) + fprintf(f, " audio.rate = %u", data->info.rate); + if (data->info.channels != 0) { + fprintf(f, " audio.channels = %u", data->info.channels); +- /* TODO: convert channel positions to string */ ++ if (!(data->info.flags & SPA_AUDIO_FLAG_UNPOSITIONED)) { ++ fprintf(f, " audio.position = [ "); ++ for (i = 0; i < data->info.channels; i++) ++ fprintf(f, "%s%s", i == 0 ? "" : ",", ++ channel_id2name(data->info.position[i])); ++ fprintf(f, " ]"); ++ } + } + fprintf(f, " source.props = {"); + pw_properties_serialize_dict(f, &data->source_props->dict, 0); +-- +2.39.0 + diff --git a/_service b/_service index dc67e8d..52e867c 100644 --- a/_service +++ b/_service @@ -3,7 +3,7 @@ git https://gitlab.freedesktop.org/pipewire/pipewire.git - refs/tags/0.3.62 + refs/tags/0.3.63 @PARENT_TAG@