- changed cpp-httplib git submodule path to https://github.com/bondagit/cpp-httplib.git
- removed compilation warning related to the usage of Boost bind global placeholders
- updated daemon version to 2.0.2
Previously, since the introduction of the streamer support in version 2.0.0,
it was impossible to compile the daemon without a dependency on libfaac.
This prevented the daemon from being built on Debian systems without `non-free`
repositories enabled. It seems the issue with libfaac is that it is based on
code with a non-DFSG compliant license.
This commit introduces a new config option WITH_STREAMER which is ON by default,
causing the behaviour to stay backwards-compatible with the one before this
commit. It is newly possible to pass `-DWITH_STREAMER=OFF` to cmake to build
without streamer support and without the dependency on libfaac.
Disabled daemon parallel builds in build.sh (option -j) as this can cause hangs on some platforms
Disabled streamer in daemon configuration used by platform and latency tests
Changed daemon version to 2.0.1
This fixes the stuckness in the newer versions of httplib. I compiled
and ran the daemon using
c8bcaf8a91
which is the newest cpp-httplib version at the time of writing.
The HTTP Streamer can be enabled via the _streamer_enabled_ daemon parameter.
When the Streamer is active the daemon starts capturing the configured _Sinks_ up to the maximum number of channels configured by the _streamer_channels_ parameters.
The captured PCM samples are split into _streamer_files_num_ files of _streamer_file_duration_ duration (in seconds) for each sink, compressed using AAC LC codec and served via HTTP.
The HTTP streamer requires the libfaac-dev package to compile.
Please note that since the HTTP Streamer uses the RAVENNA ALSA device for capturing it's not possible to use such device for other audio captures.
Fix bug HttpServer::init() would incorrectly return true when the
server is not responding, and sometimes would incorrectly return false
when the server is responding.
Using postfix decrement in the while condition caused the returned value
to be one less than intended, making an intended 0 value actually -1
which was cast to true, and an intended 1 value actually 0 and returned
as false.
In systemd when entering state STOPPING, you can't go back to READY.
So, we check if we're supposed to stop or just restart, and tells that
to systemd.
JSON boolean specifying whether to enable or disable the automatic update of the configured Sinks.
When enabled the daemon will automatically update the configured Sinks according to the discovered remote sources via SAP and mDNS/RTSP updates.
The SDP Originator (o=) is used to match a Sink with the remote source/s.
The daemon uses the most recent version of corresponding remote sources to update a Sync.
The Originator (o=) field of the SDP is used identify the corresponding remote sources.
Many thanks to @Sikabo for the original implementation !