Merge branch 'development' of github.com:mikebrady/shairport-sync into development

Documentation changes
This commit is contained in:
Mike Brady
2022-07-01 12:56:27 +01:00
+6 -4
View File
@@ -1,15 +1,17 @@
Shairport Sync on FreeBSD
----
Shairport Sync runs natively on FreeBSD using the `sndio` back end, thanks to the work of [Tobias Kortkamp (t6)](https://github.com/t6).
This guide, for a recent FreeBSD system, is to build Shairport Sync to output to the [`sndio`](https://sndio.org) and/or the [ALSA](https://www.alsa-project.org/wiki/Main_Page) sound systems.
[`sndio`](http://www.sndio.org) is *"a small audio and MIDI framework part of the OpenBSD project and ported to FreeBSD, Linux and NetBSD"* developed by Alexandre Ratchov (see also [this paper](http://www.openbsd.org/papers/asiabsdcon2010_sndio.pdf) for more details).
The `sndio` back end is based on the work of [Tobias Kortkamp](https://github.com/t6).
The build instructions here build Shairport Sync to output to the `sndio` and/or the `ALSA` sound systems. `ALSA` is the [Advanced Linux Sound Architecture](https://www.alsa-project.org/wiki/Main_Page), so it is not "native" to FreeBSD, but it has been ported to some architectures under FreeBSD.
ALSA is not "native" to FreeBSD, but it has been ported to some architectures.
Build instructions are different from previous versions of Shairport Sync and may change further. For now, leave the settings in the configuration file at default except as noted below.
Shairport Sync can be built as an AirPlay 2 player (with [some limitations](https://github.com/mikebrady/shairport-sync/blob/development/AIRPLAY2.md#features-and-limitations)) or as "Classic" Shairport Sync – a player for the older, but still supported, AirPlay (aka "AirPlay 1") protocol.
Overall, you'll be building and installing two programs. The first one is NQPTP, a companion app that Shairport Sync uses for AirPlay 2 timing, and the second one is Shairport Sync itself. Build and install NQPTP first. If you are building Classic Shairport Sync, NQPTP is unnecessary and can be omitted.
In the commands below, note the convention that a `#` prompt means you are in superuser mode and a `$` prompt means you are in a regular unprivileged user mode. You can use `sudo` *("SUperuser DO")* to temporarily promote yourself from user to superuser, if permitted. For example, if you want to execute `freebsd-update fetch` in superuser mode and you are in user mode, enter `sudo freebsd-update fetch`.
General
----
This build was done on a default build of `freebsd 12.3-RELEASE-p5`.