From 1e51282621aa9cec8cc4c946cf74f9f751b088bc Mon Sep 17 00:00:00 2001 From: Hajime Fujita Date: Sun, 6 Nov 2016 12:53:58 -0600 Subject: [PATCH] raop: Add UDP protocol handling There are two versions in the RAOP protocol; one uses TCP and the other uses UDP. Current raop implementation only supports TCP version. This patch adds an initial UDP protocol support for RAOP. It is based on Martin Blanchard's work (http://repo.or.cz/w/pulseaudio-raopUDP.git/shortlog/refs/heads/raop) which is inspired by Christophe Fergeau's work (https://github.com/zx2c4/pulseaudio-raop2). Matrin's modifications were edited by Hajime Fujita, so that it would support both TCP and UDP protocol in a single module. Also this patch includes a fix that was found thanks to Matthias, who reported that his ALAC codec support fixed the issue. https://bugs.freedesktop.org/show_bug.cgi?id=42804#c30 --- src/modules/raop/module-raop-sink.c | 457 ++++++++++-- src/modules/raop/raop_client.c | 1063 ++++++++++++++++++++++++--- src/modules/raop/raop_client.h | 39 +- 3 files changed, 1400 insertions(+), 159 deletions(-) diff --git a/src/modules/raop/module-raop-sink.c b/src/modules/raop/module-raop-sink.c index c49ad520d..ad19cadc3 100644 --- a/src/modules/raop/module-raop-sink.c +++ b/src/modules/raop/module-raop-sink.c @@ -66,12 +66,13 @@ PA_MODULE_USAGE( "sink_name= " "sink_properties= " "server=
" + "protocol= " + "encryption= " + "codec=