Setup NMOS server managing SMPTE 2110 IP video devices
This note is to install an OpenSource NMOS driver and test suites on Ubuntu server. My aims are viewing/managing SMTE 2110 devices in our broadcast environment.
The Networked Media Open Specifications (NMOS) provide an open and simple to use control-plane solution that enables interoperability and management of IP connected audio and video devices.
My tests are on Ubuntu Server 22.04.3 LTS and videos devices are commercial broadcast systems.
Here are step by step procedures:
install CMAKE, later version required
cd ~/ && wget "https://cmake.org/files/v3.24/cmake-3.24.2.tar.gz" && tar -zxvf cmake-3.24.2.tar.gz
cd cmake-3.24.2
./bootstrap
make -j$(nproc)
sudo make install
cd ~/
Install Python 3
sudo apt install -y python3 python3-pip python3-venv python3-virtualenv
python3 -m venv ~/
vim ~/.bashrc
export PATH="/home/engineering/bin:$PATH"
Install Conan
~/bin/pip3 install --upgrade conan~=1.47
~/bin/conan config set general.default_package_id_mode=minor_mode
Install DNS Service Discovery
sudo apt-get install -f libavahi-compat-libdnssd-dev libnss-mdns avahi-utils
Finally install and build NMOS-CPP
cd ~/ && git clone https://github.com/sony/nmos-cpp.git
mkdir -p /home/engineering/nmos-cpp-build
cd /home/engineering/nmos-cpp-build
cmake /home/engineering/nmos-cpp/Development -DCMAKE_BUILD_TYPE:STRING="Debug" && make -j$(nproc) && sudo make install
Run NMOS test
cd ~/ && git clone https://github.com/AMWA-TV/nmos-testing.git && cd nmos-testing && python3 -m pip install -r requirements.txt
cd ~/nmos-testing && python3 nmos-test.py
Then the test suite can be accessed at: http://127.0.0.1:5000