In early 2021, AWS relaunched statistical multiplexing (statmux) hardware and software for on-premises applications. The new AWS Elemental Statmux incorporates the latest statmux features that were previously available in AWS Elemental MediaLive and adds additional features for the on-premises environment.

Statmux is a technology used to efficiently combine (or multiplex) multiple encoded video channels (or programs) into a single Multi-Program Transport Stream (MPTS) for delivery over fixed bandwidth infrastructures such as satellite, cable, and terrestrial networks. The new AWS Elemental Statmux continually analyzes the video scene complexity of each channel and dynamically allocates the bitrate based on this analysis. A higher bitrate is allocated to channels with more complexity and a lower bitrate is allocated to channels with less complexity at a given point in time. The amount the bitrate is increased or decreased is dependent on user defined minimum and maximum bitrate settings, and the priority setting for each channel. The end result is improved bandwidth efficiency, providing higher video quality and the ability to distribute more channels within a fixed bandwidth.

The complete statmux workflow consists of the latest releases of the AWS Elemental Live encoder software, the AWS Elemental Conductor management system, and the new AWS Elemental Statmux in a clustered environment. Statmux can be deployed as appliances, or alternatively it can be installed as software on customer supplied server hardware, either in a virtual environment or on bare metal.

The AWS Elemental Live encoder accepts either compressed or uncompressed contribution streams as inputs, and encodes using the MPEG-2, MPEG-4 (AVC), or HEVC video codecs, creating a Single Program Transport Stream (SPTS) output for each channel. AWS Elemental Statmux dynamically allocates the bitrate for each channel and multiplexes the channels into an MPTS. AWS Elemental Conductor is the centralized management system used to configure the encoding and statmux parameters, monitor the system, and automate failover to a backup node if there is a failure of a primary encoder or statmux node. Figure 1 shows a high-level overview of the new statmux architecture. The following sections provide details on the new features available to build and operate a Statmux installation.

 

Figure 1: AWS Elemental Statmux architecture

Figure 1: AWS Elemental Statmux architecture

 

Improved video quality and bandwidth efficiency

The new AWS Elemental Live Statmux software incorporates a new rate control algorithm for statistical multiplexing. The new algorithm is based on the concept of context aware encoding that was developed initially as part of the AWS Elemental Quality-Defined Variable Bitrate (QVBR) rate control algorithm. Bitrate allocation is driven by perceptual models that adapt to the encoded content with the objective of maintaining consistent quality among all channels in a statmux group. AWS Elemental Statmux now distributes the available bitrate across the channels using a more efficient method, taking into account viewer quality perception, resulting in better overall video quality and bandwidth efficiency than previous versions.

In addition to the Statmux rate control improvements, there are also several new improvements on the MPEG-2, MPEG-4 (AVC), and HEVC encoding algorithms, which lead to additional bandwidth efficiencies and better video quality. This includes new video filters to reduce unwanted video noise and compression artifacts in the source video to provide better output video quality. Alternately the video bitrate can be reduced while the same video quality is achieved to allow for additional channels in the statmux group. These new features typically provide anywhere from 5 – 30% improvements in video quality and bandwidth efficiency. The amount of improvement depends on several factors including the codecs and settings for each channel in the statmux group.

For premium channels that require a higher level of video quality compared to other channels in the statmux group, video quality can now be controlled using a priority setting feature, which ranges from -5 to +5, with 0 as the default and 5 as the highest priority level. With this setting, users can more easily control the video quality to closely follow the intended priority for each channel in a statmux group.

Expanded input and output support

AWS Elemental Statmux now supports multiple input and output formats, codecs up to UHD 10-bit HDR resolution, and a lower processing latency. Input formats supported include SDI, UDP/IP MPEG Transport Streams, SMPTE ST 2110, SMPTE ST 2022-6, and various video file formats. Input codecs supported include MPEG-2, MPEG-4 (AVC), and HEVC.

The output formats supported are an SPTS from AWS Elemental Live and an MPTS from AWS Elemental Statmux. Output codecs supported include MPEG-2, MPEG-4 (AVC), and HEVC. Any of these codecs can be combined into a statmux group, which gives content and service providers the flexibility to support both legacy and newer distribution models as they migrate to more bandwidth-efficient codecs. The MPTS output bitrate can be up to 125 Mbps with up to 60 channels (programs) per statmux group. This means that newer satellite modulation solutions and use cases that require higher bitrates are supported.

Additionally, the end-to-end statmux latency is reduced without compromising video quality or bandwidth efficiency, and customers can use a new setting to further reduce latency when required. This new parameter has minimal effects on video quality and bandwidth efficiency, and the effects can be mitigated by adjusting the statmux configuration. The latency can be reduced up to 1500 milliseconds with this new setting versus the default. The right balance of latency and video quality depends on customer requirements and the specific operating point for a given statmux group.

Centralized management and automated cluster configuration

To overcome the challenges of setting up a statmux system (cluster), AWS Elemental Conductor is used for centralized management of the AWS Elemental Statmux deployment. Conductor has a new, consolidated user interface that simplifies the configuration, management, and monitoring of all the Live encoder nodes, Conductor management nodes, and Statmux nodes, and provides automated redundancy, all in one place. Conductor automates the management of all Live to Statmux IP address configurations and connections based on a user-defined range. In previous versions, each IP connection had to be manually configured which was time consuming and prone to errors.

A statmux group of multiple channels typically has different audio profiles and metadata. As a result, it can be a complex task to calculate the statmux video pool bitrate, especially because ancillary audio and metadata streams can vary over time. In the past, customers would reserve additional bandwidth to cope with these variations. Statmux now offers automatic bandwidth management to minimize the amount of reserved bandwidth in the output stream. Statmux adapts to changes in audio and metadata flows in real time and adjust the video pool bitrate accordingly. This ensures that the output is always optimized for the highest video quality and bandwidth utilization without exceeding the defined fixed output bitrate.

High availability and redundancy

For statmux systems, AWS Elemental Live encoder nodes can now be deployed using either an N+M or a 1+1 redundancy architecture. With an N+M redundancy architecture, a smaller “M” number of backup nodes are used to support a larger “N” number of primary nodes as illustrated in Figure 2. The benefit here is the reduced number of backup nodes needed which reduces costs. Conductor automatically manages the replacement of a failed node, and the end user can initiate the failover if needed for maintenance reasons. In case of a node failure, the backup node needs to be configured first before it can replace the failed node. The time to perform the failover depends on the number of channels and profiles running on the failed node. For the maintenance use case, there are minimal disruptions to the affected channels when failing over to a backup node.

To provide significantly faster encoder node failover, a 1+1 redundancy architecture is supported where there is a dedicated backup node for each primary node. Conductor automatically manages the replacement of a failed node, and the end user can initiate the failover if needed for maintenance reasons. Additionally, Conductor will automatically replace the failed node if configured to do so, restoring full 1+1 redundancy. Channel density on encoder nodes have increased where a single node failure can impact a significant number of channels.  A 1+1 redundancy architecture gives the end user an option to minimize the impact of a node failure and further optimize availability.

Statmux nodes can also now be deployed using either an N+M or 1+1 redundancy architecture. As a single Statmux node often handles several multiplexes each with a large number of channels, the total amount of content processed by a single Statmux node can be significant. To minimize the impact of a node failure, we generally recommend a 1+1 redundancy architecture for Statmux nodes.  As with Live encoder nodes, Conductor automatically manages the replacement of a failed Statmux node.

Alternately, an N+M redundancy architecture can be deployed for the Statmux nodes to reduce costs. While this architecture increases the failover time as Conductor must configure the backup node to match the configuration of the failed node, it still provides full redundancy and reliability. Both 1+1 and N+M redundancy architectures offer near seamless switching to a backup node for maintenance reasons. Figure 2 illustrates a 1+1 redundancy configuration for the Statmux nodes with a backup node that is used for automatic replacement of a failed node to restore 1+1 redundancy.

 

Figure 2: AWS Elemental redundancy architecture

Figure 2: AWS Elemental redundancy architecture

 

In addition to node redundancy, Statmux uses SMPTE ST 2022-7 seamless protection switching between the Live and Statmux nodes for additional protection against packet loss and high availability.

A 1+1 redundancy architecture is also recommended for the Conductor management system. If there is a failure of the primary Conductor node, the user will switch to the backup node to restore the management system.

In most cases, conditional access and encryption are required for distribution of the MPTS. AWS Elemental Statmux is standards-based, making it compatible with most conditional access and encryption systems deployed today.

Introducing new AWS Elemental Statmux hardware

AWS Elemental Statmux is available in two appliance configurations to support different size workflows.

  • Statmux M811AE
  • Statmux M846AE

Both the M811AE and M846AE are built on the latest generation of hardware available from AWS Elemental, and they use 30% less power than previous versions. These appliances are 1 rack unit (RU) high, short in depth for easier rack installation, and they support copper and fiber network interfaces. Data sheets and user guides can be found here.

 

Figure 3: AWS Elemental Statmux front panel

Figure 3: AWS Elemental Statmux front panel

 

Summary

To summarize, with this release of AWS Elemental Statmux, delivery of multiple live video programs can be efficiently compressed, using available transport bandwidth across satellite, cable, and terrestrial networks to reduce transmission cost, while maintaining very high video quality.

Workflows built with AWS Elemental Statmux, Live, and Conductor offers flexible deployment options and simplified configuration and management. The new features are available in software version 2.20 for AWS Elemental Statmux, 2.20 for AWS Elemental Live, and 3.20 for AWS Elemental Conductor. To learn more, visit AWS Elemental Statmux.

 

If you have questions, feedback, or would like to get involved in discussions with other community members, visit the AWS Developer Forums: Media Services.