Which Upstream Protocol to use with RouteMaster?

RouteMaster’s upstream protocols allow third-party software and hardware to connect to and control routing. There’s a wide choice, including most industry-standard protocols for control of audio and video routers. If you already have software or hardware that supports one of the listed protocols, just enable that ‘Client’ protocol in RouteMaster, select a TCP/IP port and you should be good to go.

However, if you’re a software developer wanting to control RouteMaster, which one should you choose?  We’d recommend one of the following:

Rascular WebSocket protocol

This is our own protocol, developed specifically for RouteMaster. It’s based on HTML Websockets and JSON messages, so is a great fit for modern software – particularly if you need to control routing directly from a Web Browser. All RouteMaster capabilities are supported, and you can use it with TLS encryption. Because we “eat our own dogfood”, the protocol is simple, comprehensive and extensible.

In addition, the WebSocket protocol can transmit status and metadata to clients – ideal for NDI, where source status and NDI origin name and address information makes it possible to display per-source live streams and monitor their status.

The protocol is documented here: RouteMaster: Websocket Protocol for Router Control

You can test your code against RouteMaster running in a Azure VM at ws://webcentre.rascular.com:81

Blackmagic Design Videohub protocol

This is a commonly used protocol. It’s text-based and runs over TCP/IP, usually on port 9990. It supports simple switching and name transfer. You can easily test commands using a simple TELNET client.

While it’s not as full-featured as the Websocket protocol, it’s a good choice for many applications.

The protocol documents are available from Blackmagic Design.

Pro-Bel SW-P-08

This is one of the oldest and most widely supported router protocols, originally used over RS-422 but typically now used over TCP/IP.

Because it’s a low-level binary protocol, it’s often used with embedded systems where there are constraints on bandwidth and code size. However, as it’s been around for 30-odd years it’s very well supported.

A protocol document is publicly available from Grass Valley.

If you’re having issue developing router control protocols we’ve made available a set of Wireshark packet dissectors for some common protocols. It’s available on GitHub.

For full information on RouteMaster’s implementation of SW-P-08, please see here.