diff --git a/README.md b/README.md index b3b0757..8076f14 100644 --- a/README.md +++ b/README.md @@ -54,6 +54,7 @@ The daemon can be cross-compiled for multiple platforms and implements the follo * mDNS sources discovery and advertisement (using Linux Avahi) compatible with Ravenna standard * RTSP client and server to retrieve, return and update SDP files via DESCRIBE and ANNOUNCE methods according to Ravenna standard * IGMP handling for SAP, PTP and RTP sessions +* Integration with systemd watchdog monitoring (from daemon release v1.6) The directory also contains the daemon regression tests in the [tests](daemon/tests) subdirectory. See the [README](daemon/README.md) file in this directory for additional information about the AES67 daemon configuration and the HTTP REST API. @@ -113,6 +114,43 @@ The [aes67-daemon branch of ravenna-alsa-lkm repository](https://github.com/bond See [ALSA RAVENNA/AES67 Driver README](https://github.com/bondagit/aes67-linux-daemon/blob/master/README.md) for additional information about the Merging Technologies module and for proper Linux Kernel configuration and tuning. +### [systemd](systemd) directory ### + +This directory contains systemd configuration files for the daemon. + +You can install the daemon under systemd using the following commands: + + sudo useradd -M -l aes67-daemon -c "AES67 Linux daemon" + sudo cp daemon/aes67-daemon /usr/local/bin/aes67-daemon + sudo cp daemon/daemon.conf /etc + sudo cp systemd/aes67-daemon.service /etc/systemd/system + sudo systemctl enable aes67-daemon + systemctl daemon-reexec + +To start the daemon use: + + sudo systemctl start aes67-daemon + +To stop it use: + + sudo systemctl stop aes67-daemon + + +The daemon requires the RAVENNA module to be loaded. + +You can install the module on Ubuntu distro using the following commands: + + cd 3rdparty/ravenna-alsa-lkm/driver + sudo make modules_install + +If this doesn't work because you miss kernel certificate follow the instructions at: [No OpenSSL sign-file signing_key.pem](https://superuser.com/questions/1214116/no-openssl-sign-file-signing-key-pem-leads-to-error-while-loading-kernel-modules) + + +Finally use the command to probe the modules: + + sudo depmod -a + + ### [test](test) directory ### This directory contains the files used to run the daemon platform compatibility test on the network loopback interface. The [test](#test) is described below. diff --git a/build.sh b/build.sh index 538902f..1ead070 100755 --- a/build.sh +++ b/build.sh @@ -43,7 +43,7 @@ cd .. cd daemon echo "Building aes67-daemon ..." -cmake -DCPP_HTTPLIB_DIR="$TOPDIR"/3rdparty/cpp-httplib -DRAVENNA_ALSA_LKM_DIR="$TOPDIR"/3rdparty/ravenna-alsa-lkm -DENABLE_TESTS=ON -DWITH_AVAHI=ON -DFAKE_DRIVER=OFF . +cmake -DCPP_HTTPLIB_DIR="$TOPDIR"/3rdparty/cpp-httplib -DRAVENNA_ALSA_LKM_DIR="$TOPDIR"/3rdparty/ravenna-alsa-lkm -DENABLE_TESTS=ON -DWITH_AVAHI=ON -DFAKE_DRIVER=OFF -DWITH_SYSTEMD=OFF . make cd .. diff --git a/daemon/CMakeLists.txt b/daemon/CMakeLists.txt index 06712b1..2b20e2e 100644 --- a/daemon/CMakeLists.txt +++ b/daemon/CMakeLists.txt @@ -58,7 +58,7 @@ if(WITH_AVAHI) endif() if(WITH_SYSTEMD) - MESSAGE(STATUS "WITH_SYSTEMD") - add_definitions(-D_USE_SYSTEMD_) - target_link_libraries(aes67-daemon systemd) + MESSAGE(STATUS "WITH_SYSTEMD") + add_definitions(-D_USE_SYSTEMD_) + target_link_libraries(aes67-daemon systemd) endif()