Networked Media Open Specifications (NMOS) in DeepStream
The NvDsNmos utility library provides the APIs to create, destroy and internally manage an NMOS Node for a DeepStream application.
The library can automatically discover and register with an NMOS Registry on the network using the AMWA IS-04 Registration API.
The library provides callbacks for NMOS events such as AMWA IS-05 Connection API requests from an NMOS Controller. These callbacks can be used to update running DeepStream pipelines with new transport parameters, for example.
NvDsNmos currently supports Senders and Receivers for uncompressed Video and Audio, i.e., SMPTE ST 2110-20 and SMPTE ST 2110-30 streams.
The NvDsNmos library supports the following specifications, using the Sony nmos-cpp implementation:
Session Description Protocol conforming to SMPTE ST 2110-20 and -30
The Avahi Apple Bonjour compatibility library must be installed. For example, run:
sudo apt-get install libavahi-compat-libdnssd-dev
The Avahi mDNS/DNS-SD daemon must also be running. The Avahi browsing, publishing and discovery utilities (avahi-utils) can be used to confirm that DNS Service Discovery (DNS-SD) records for an NMOS Registry are discoverable. For example, run:
avahi-browse -r _nmos-register._tcp
Refer to the
nvdsnmos.h header file.
Refer to the DeepStream Reference Application - deepstream-nmos app, which demonstrates how to use the NvDsNmos library.