Download raw body.
audio/shairport-sync: test/update to 4.3.2
I noticed that 3.3.9 doesn't always start playback due to sync errors
when connecting; it does not recover, but restarting the daemon and
reconnecting a few times works, then playback is stable.
With 4.3.2 I see the same behaviour, possibly more often.
Can someone else report how well/bad works for them?
To see any kind of log at all with either version, one can do
# rcctl stop shairport_sync
# su -fl -s /bin/sh _shairport
$ shaiport --verbose --use-stderr
Still no AirPlay 2 support due to lack of NQPTP (Not Quite PTP)
in form of a separate daemon, otherwise lots of changes/fixes:
https://github.com/mikebrady/shairport-sync/releases
Index: Makefile
===================================================================
RCS file: /cvs/ports/audio/shairport-sync/Makefile,v
diff -u -p -r1.5 Makefile
--- Makefile 25 Jan 2024 00:23:07 -0000 1.5
+++ Makefile 25 Jan 2024 00:48:36 -0000
@@ -1,14 +1,6 @@
COMMENT = AirPlay audio player
-GH_ACCOUNT = mikebrady
-GH_PROJECT = shairport-sync
-GH_TAGNAME = 3.3.9
-REVISION = 3
-
-SITES.fix = https://github.com/mikebrady/shairport-sync/commit/
-# "avoid recursive mutex acquisition in sndio backend" to fix crash on pause
-PATCHFILES.fix = 57af5f3c10c54947cf160fe46a580cf40669d412.patch
-PATCH_DIST_STRIP = -p1
+DIST_TUPLE = github mikebrady shairport-sync 4.3.2 .
CATEGORIES = audio
@@ -27,7 +19,8 @@ LIB_DEPENDS = devel/libconfig \
CONFIGURE_ENV += CFLAGS="${CFLAGS} -I${PREFIX}/include"
CONFIGURE_STYLE = autoreconf
-AUTOCONF_VERSION = 2.69
+SEPARATE_BUILD = Yes
+AUTOCONF_VERSION = 2.71
AUTOMAKE_VERSION = 1.16
CONFIGURE_ARGS += --with-ssl=openssl \
Index: distinfo
===================================================================
RCS file: /cvs/ports/audio/shairport-sync/distinfo,v
diff -u -p -r1.2 distinfo
--- distinfo 22 Jan 2024 01:40:28 -0000 1.2
+++ distinfo 25 Jan 2024 00:48:36 -0000
@@ -1,4 +1,2 @@
-SHA256 (57af5f3c10c54947cf160fe46a580cf40669d412.patch) = oXgaUppVX6sT9ZLReDyLZ9pRxB/s43puBLDsvSlmsWQ=
-SHA256 (shairport-sync-3.3.9.tar.gz) = F5kMsmIFUcqgehw7NxiJ5VgDBx6q2gTpWMNWVHp+F5U=
-SIZE (57af5f3c10c54947cf160fe46a580cf40669d412.patch) = 2421
-SIZE (shairport-sync-3.3.9.tar.gz) = 426827
+SHA256 (mikebrady-shairport-sync-4.3.2.tar.gz) = 37SFwGAzmAMqAOUfhLh0dJu/FVslet2j0nDVmJ3gi/0=
+SIZE (mikebrady-shairport-sync-4.3.2.tar.gz) = 560574
Index: patches/patch-man_shairport-sync_7
===================================================================
RCS file: /cvs/ports/audio/shairport-sync/patches/patch-man_shairport-sync_7,v
diff -u -p -r1.1.1.1 patch-man_shairport-sync_7
--- patches/patch-man_shairport-sync_7 27 Apr 2022 02:19:25 -0000 1.1.1.1
+++ patches/patch-man_shairport-sync_7 25 Jan 2024 00:48:36 -0000
@@ -7,5 +7,5 @@ Index: man/shairport-sync.7
-.TH shairport-sync 7 User Manuals
+.TH shairport-sync 1 User Manuals
.SH NAME
- shairport-sync \- Synchronised Audio Player for iTunes / AirPlay
+ shairport-sync \- AirPlay and AirPlay 2 Audio Player
.SH SYNOPSIS
Index: patches/patch-rtsp_c
===================================================================
RCS file: patches/patch-rtsp_c
diff -N patches/patch-rtsp_c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-rtsp_c 25 Jan 2024 00:48:36 -0000
@@ -0,0 +1,21 @@
+No per-socket TCP keep-alive on OpenBSD
+
+Index: rtsp.c
+--- rtsp.c.orig
++++ rtsp.c
+@@ -5601,6 +5601,7 @@ void *rtsp_listen_loop(__attribute((unused)) void *arg
+ size_of_reply = sizeof(SOCKADDR);
+ if (getsockname(conn->fd, (struct sockaddr *)&conn->local, &size_of_reply) == 0) {
+
++#if !defined(__OpenBSD__)
+ // Thanks to https://holmeshe.me/network-essentials-setsockopt-SO_KEEPALIVE/ for this.
+
+ // turn on keepalive stuff -- wait for keepidle + (keepcnt * keepinttvl time) seconds
+@@ -5635,6 +5636,7 @@ void *rtsp_listen_loop(__attribute((unused)) void *arg
+ sizeof(keepAliveInterval))) {
+ debug(1, "can't set the keepidle missing count interval");
+ };
++#endif /* !defined(__OpenBSD__) */
+
+ // initialise the connection info
+ void *client_addr = NULL, *self_addr = NULL;
Index: pkg/shairport_sync.rc
===================================================================
RCS file: /cvs/ports/audio/shairport-sync/pkg/shairport_sync.rc,v
diff -u -p -r1.1.1.1 shairport_sync.rc
--- pkg/shairport_sync.rc 27 Apr 2022 02:19:25 -0000 1.1.1.1
+++ pkg/shairport_sync.rc 25 Jan 2024 00:48:36 -0000
@@ -6,4 +6,5 @@ daemon_user="_shairport"
. /etc/rc.d/rc.subr
rc_bg=YES
+
rc_cmd $1
audio/shairport-sync: test/update to 4.3.2