This multi-post series is a dive deep into the Society of Motion Picture and Television Engineers (SMPTE) ST 2110 suite of standards. The series explores the reasons customers transition from Serial Digital Interface (SDI) infrastructure to IP. It also looks at the trade-offs to consider when making the switch, and best practices to use AWS Elemental Live with SMPTE ST 2110.
PART 1: Background and key benefits of SMPTE ST 2110 on AWS Elemental Live
PART 2: Working with 2110 on the AWS Elemental Live Appliance
PART 3: Simplifying with NMOS (this post)
AWS Elemental Live appliances running 2.19.1+ now support control of Society of Motion Picture and Television Engineers (SMPTE) 2110 flows inbound and outbound using Networked Media Open Specifications (NMOS). This post walks through some of the necessary configurations and showcases sample workflows. Please note that you must set up your NMOS registry on an appliance or VM that is not the AWS Elemental Live.
To use NMOS with Elemental Live, you must:
- Have a NMOS registry and client set up on an IP-based network (external to Live software)
- Configure live events with SMPTE 2110 input or SMPTE 2110 output
- Use 25 GbE interfaces on the Elemental Live appliance
WHAT IS NMOS
At a high level, NMOS is a group of specifications that allows for orchestration of media flows on an IP network, created by Advanced Media Workflow Association (AMWA). AWS Elemental Live appliances support IS-04 and IS-05 specifications. IS-04 allows for device discovery and registration, while IS-05 focuses on device connection management.
WHY DOES THIS MATTER?
Primarily, it saves you time and can simplify your environment. Incorporating devices from different manufacturers on the same interface to control flows from devices becomes simpler once you stand up a registry. The ability to run different versions of IS-04 at the same time on a single registry allows you to upgrade each system as new capabilities are released. This helps future-proof your network design. Since NMOS handles many streaming technologies and formats — such as 2110, 2022-6, RTP, or AES67 — the ability to incorporate new additions and improvements is easier with the centralized management provided by NMOS.
HOW DO I USE IT?
There are now open-source projects like this one that allow you to experiment with NMOS in a real-world environment. However, the enhancements on the UI for commercial NMOS registries should be considered as they can significantly increase the simplicity and agility.
Taking time to learn the terminology of NMOS is important. Understanding a flow vs. a sender vs a source is critical when setting up your environment. For AWS Elemental Live, the appliance itself is referred to as a node. Since the registry version and sender/receiver information the nodes advertise dictate which flows can pass between two devices, the overall management is handled by NMOS automatically. For example, you can’t send an h.264 flow to a receiver that only accepts uncompressed video. NMOS simply doesn’t allow that connection, which protects you from inadvertent failure due to a codec mismatch.
ELEMENTAL LIVE / NMOS Terminology Cheat Sheet:
Elemental Live Appliance >> NMOS Node
Elemental Live Input >> NMOS Device
Elemental Live Active 2110 Connection >> NMOS Flow
Elemental Live Individual Component of an Input (Video or Audio or Ancillary) >> NMOS Receiver
Elemental Live Output >> NMOS Sender
Once your registry is running, you can enable NMOS from your AWS Elemental Live appliance by checking a single check box inside your event page. The Live appliance appears as a node when the first NMOS enabled event is started. You can apply additional configuration settings by SSH’ing into the node and updating the configuration file here – /opt/elemental-nmos/config/node-config.json
The following image shows an Input on Live (device in NMOS terms) that is controlled by NMOS. This example generates three receivers (video, audio, ancillary), but only the video and audio are required by the Live appliance, as ancillary is optional. The only configuration you need to include is the NIC you are using. You need to configure exactly one video and one audio interface, in addition to adding any ancillary interfaces needed.
On a 2110 output, you simply check the NMOS Control check box on the Output Group Settings section, and again specify the NIC to use.
After you start the event, your event is in a Preprocessing state, due to the 2110 Input awaiting a signal from NMOS. Your outputs are also in a Paused state. The IS-05 connection between the sender and receiver is not yet initiated, as that step is controlled using your own application logic. Once all flows for that input are received by the Live appliance, and the output is put in the Active state by NMOS, the event switches to the Running state.
MAINTAIN THE BROADCAST STANDARD
As with any broadcast footprint, reliability is paramount. With NMOS, you can use multicast-DNS or unicast-DNS to help isolate environments where multiple clusters of nodes need to remain independent. This still allows them to rely on the additional registries if there is a registry failure.
NMOS monitors which nodes, senders, and receivers are active and which connections are made, but it does not monitor for dropped frames or media-specific issues. You need to rely on other tools, in addition to logging, to ensure what you’re sending makes it to the destination at the quality you expect.
NMOS is a great addition to support the shift to IP networking for broadcast video. As AWS continues to expand Elemental Live’s support and integration with protocols and formats, NMOS is a great way to manage your network at scale. The specifications continue to grow and improve to cover new use cases.
In this series, I discussed the importance of shifting from SDI infrastructure to IP with the help of SMPTE 2110 and NMOS. If your goal is to become more agile, scalable, and future-proof, then making the shift to IP is a must.