Linking SMPTE 2110 to WebRTC Without SDI Gateways

junpei yoshino
MIXI DEVELOPERS
Published in
3 min readSep 9, 2021

--

Since June 2020, our online service for publicly-managed sports betting, TIPSTAR, has used SMPTE 2110 for transmission between video editing systems and more than 40 keirin stadiums and auto race tracks across the country, each for approximately 10 races per day.

We use WebRTC to send video data through the internet, allowing remote workers to preview videos from anywhere. This makes remote production possible.

This time, we developed an application that goes through SMPTE 2110-compliant processes directly on the server and sends video and audio packets to WebRTC, replacing the previous configuration that required using an SDI gateway and a PCIe-based SDI capture board. It also implements SMPTE 2022–7 and supports seamless protection of video transmission segments.

This allows us to connect IP packets used in broadcast production and other applications to WebRTC in a simple way.

Its implementation shall be explained below.

Background

We constantly stream more than 38 kinds of HD materials using SMPTE 2110.

We are operating a network with redundant routes to five locations in Tokyo: three in Shibuya, one in Toyosu, and one in Otemachi.

Each location is connected to the other with a minimum of 100 Gbps redundancy.

We use WebRTC to allow flexible viewing of our videos from remote locations.

Issue

As the service grew, we needed to improve cost performance so we could create enough redundant systems for more video processing and increased content.

What We Changed

This time, we implemented with NVIDIA(R)’s Rivermax(R) and ConnectX(R)-6 Dx.

The following figure shows a physical comparison of the conventional configuration and the newly developed configuration.

In the images above, the blue and red networks represent two networks using SMPTE 2022–7.

In the past, video and audio packets were converted into SDI signals through SDI gateways and captured using SDI capture boards.

What we’ve built allows the server to receive video and audio packets directly from the network, processes those packets, and eliminates the need for an SDI gateway.

Without this, we would have to prepare enough gateways for the numerous channels, cable them, and configure the gateway settings and WebRTC signaling settings separately, but now we can do it all at once. As a result, we have significantly reduced costs for our working environment.

Improvements in the Software

In addition, we have made improvements in connecting video and audio to WebRTC.

Instead of having to go through V4L2 or ALSA, we have changed it so that we can send data directly to libwebrtc.

What used to be implemented through various contexts is now implemented in a simple single process.

Another great advantage of this change is that we can control the incoming SMPTE 2110 signal within our own processes.

We also created a system to manage the linkage between the WebRTC signaling information and the SMPTE 2110 information.

At this time, a single server with a simple configuration can handle 15 channels of uncompressed HD video with no degradation in performance.

Summary

We have developed software to flexibly link SMPTE 2110 to WebRTC.

With this development, all that is required to use this system is to connect the server to two networks using SMPTE 2110, and to link the signaling information with the video signal information.

This allows us to receive the video through WebRTC.

As a result, we can send videos to WebRTC at a moment’s notice in a live video production environment using SMPTE 2110.

--

--