Capabilities
Everything an IP gallery asks for, in one tool.
From the frame coming in to the operator’s panel: 2110, SRT and RTMP inputs, real-time processing, delivery, control protocols and fleet monitoring.
ST 2110 engine
One dual-role engine per node, kernel-bypass, receive and transmit in the same process.
| Transport | Intel Media Transport Library on DPDK, in AF-XDP or full-PF mode, on Intel E810 cards. |
|---|---|
| Essences | ST 2110-20 video, ST 2110-30 audio (L24 / 48 kHz, up to 8 channels), ST 2110-40 ancillary data encoded per RFC 8331. |
| Transmit | Narrow and wide classes, declared transmit layouts, bars and silence served by the engine itself when the producer stops. |
| Interlace | Field-native 1080i chain end to end: receive, processing and transmit at field rate. |
| Redundancy | ST 2022-7 across two ports, or two paths on a single card. |
| Multicast | Central allocation, one group per flow, atomic reservation, configurable ranges. |
| Formats | Size, rate and sampling are carried by the flow and by the configuration, then tracked from receive through to transmit. |

IP inputs
A chain exists without a 2110 card: it comes in over SRT or RTMP.
| Modes | SRT as listener (the source pushes to the container) or as caller (the container pulls a remote stream); RTMP as server (an encoder or OBS pushes) or as pull. |
|---|---|
| SRT security | Passphrase and stream id, with buffer latency tuned to the quality of the link. |
| Declared format | Size, rate, sampling, bit depth, scan and field order are declared at the input, so the downstream chain knows what to expect from the first frame. |
| Genlock | The input is realigned to the chain’s clock, with an adjustable phase, so it mixes with the other sources. |
| Loss of signal | Bars or black served through dropouts, with freeze detection beyond a configured delay. |
| Ingest network | The interface carrying the ingest is chosen independently of the control plane. |
A chain can therefore run entirely on SRT or RTMP: it comes in here, and leaves through delivery, with no 2110 component deployed at all. The processing, the wiring, the macros and the monitoring are unchanged.
Processing
Real-time containers reading from and writing to the memory bus.
Colour corrector
Real-time primary correction, native compiled kernel.
Delay
Adjustable delay on a flow, frame by frame.
UDC
Format and frame-rate conversion, inserted automatically by the cabling page when two points do not agree on a format.
Composition
Assembling several sources into one picture, and serving what feeds them.
Multiview
Composable video wall, optional NVIDIA GPU acceleration, audio meters, clocks, text, tally, reusable overlay templates.
Pyramid
Multi-scale proxies produced once and reused by consumers, instead of being recomputed everywhere.

Media
In preparation: what comes in from a file, and what goes out to one.
The media family is under development and has not shipped yet. It will cover file playback locked to the chain’s clock, recording to MXF, MOV or MKV on the node’s storage, still images and bars, and codec or profile changes without leaving the chain.
We would rather say so than let you guess. It is expected by the end of 2026; if your chain depends on it, let us talk.
Delivery
One encode, several destinations, and a dead destination does not take the others down.
| Outputs | UDP, SRT and WebRTC at the same time, from a single encode fanned out by a tee. |
|---|---|
| Video | H.264 or HEVC, with bitrate, preset, GOP, size and frame rate; size is derived automatically from the flow when it is not imposed. |
| Audio | Multiple tracks built from the eight input channels, mono or stereo, AAC for UDP and SRT, Opus for WebRTC. |
| Fault tolerance | Each branch is isolated: an unreachable destination is skipped and the encode carries on. |
| Preview | Built-in MediaMTX gateway, WHEP playback embedded in the page. |
| Monitoring | One preview encoder per user, repointable at any flow in the chain and stopped automatically after ten idle minutes. |

Operations
The daily gestures: patch, recall, trigger, name.
Live cabling
A topology page shows what feeds what. You switch a source while it runs, and the converter that is needed appears on its own.
Projects
Snapshot of wiring and configuration, recall with progress, access restricted to one user or one client.
Macros and triggers
Chained actions and continuous parameters. Every plugin function is addressable from a macro, including parameters that are adjustable live.
Production slots
The functional identity of a production position, stable when the container serving it is replaced. That is the identity external control systems address, not a disposable technical handle.
Accounts and roles
Editable permissions, adjustable password strength policy, a register of open sessions with remote sign-out, and an audit trail of actions.
Public access
A read-only view is shared by token, with no account, restricted to addresses if needed, and it follows the visitor’s browser language.
Monitoring
Knowing before the operator does, and knowing why.
| Per node | CPU, memory, disk, hardware sensors, PTP state, GPU, RDMA and measured memory bandwidth. |
|---|---|
| Failure detection | A node that stops answering is a state of its own, reported and timestamped as such. |
| Alerts | Three levels, structured context (container, node, kind), filtering, and notification by email or push. |
| Resources | A consumption profile per container type, NUMA-aware isolated-core allocation, then a check of the placement actually obtained. |
| Calibration | Consumption is measured during operation, on the load the site puts through. |
| IS-12 / BCP-008 | One monitor per receiver and per sender, compliant with BCP-008-01/02: link, connection, flow and synchronisation state, with counters and cause messages. Readable by any third-party controller, with no proprietary API. |
| SNMP | A read-only SNMPv3 agent for the site’s supervision system, and traps on alerts. |
NMOS registry and discovery
Being the plant’s directory, not only appearing in it.
| Published resources | The internal graph — composition, delivery, 2110 engine ports — is published as IS-04 Sources, Flows, Senders and Receivers, under the MXL transport defined by BCP-007-03. A plugin output becomes a Sender, an input becomes a Receiver. |
|---|---|
| Embedded registry | Bobi.Studio serves the Registration and Query APIs in v1.3, expiring Nodes that stop sending heartbeats. A plant with no third-party registry can rely on ours. |
| DNS-SD discovery | The Node, and the registry when it is open, announce themselves over mDNS with their priority. |
| Tally over IS-07 | The same tally state as TSL, published over NMOS: one Source per flow and per level. |
| PTP domain over IS-09 | The plant’s synchronisation domain published once, readable by every conformant device. |
| Client side | An MS-05-02 probe reads and drives a third-party device’s model, and the BCP-008 monitors of third-party equipment are followed in the same place as ours. |
Panels and external control
A gallery does not drive everything with a mouse.
Ember+
A control tree published on production slots, addressable by a third-party supervision system.
TSL UMD 5.0
Exchange of labels and tally with your third-party tools, broadcast controller included, in both directions.
Skaarhoj Raw Panel
Quick Bar, named presets and source routing.
NMOS IS-05
Connection activation from the site’s broadcast controller.
SAP / SDP
Announcement of our sources and discovery of third-party flows, the only mechanism shared by AES67, Ravenna and Dante in AES67 mode.

One capability, one plugin.
Every container type lives in its own repository, with its manifest, its script and its interface. Adding one touches nothing else.