DGI.Framework.Transport.Blackmagic.Design.Video.Hub.Driver 1.0.0
DGI Blackmagic Design VideoHub Driver
A .NET client library for controlling Blackmagic Design VideoHub matrix switchers over their Ethernet text protocol (TCP port 9990).
Features
- Full routing control — route any input to any output
- Label management — read and write input/output port labels
- Lock management — lock, unlock, and force-unlock output ports
- Real-time state — in-memory dictionaries kept in sync with every device update
- Event-driven updates — subscribe to routing, label, lock, and device-info changes
- Thread-safe — concurrent command calls are serialised; state dictionaries use
ConcurrentDictionary - Multi-target — targets
net47andnet8.0
Installation
Add the NuGet package from the DGI private feed:
dotnet add package DGI.Blackmagic.Design.Video.Hub.Driver
Quick Start
using Dgi_BlackMagicDesignVideoHubDriver;
var tcpDriver = new DotNetTcpClient(
new DgiRemoteDeviceConfiguration.NetworkConfiguration { IpAddress = "192.168.1.27", Port = 9990 }
);
var driver = new BlackMagicDesignVideoHubDriver(tcpDriver);
driver.Register();
driver.OutputRoutingChanged += (_, e) =>
PrintUpdate($"Output {e.OutputPort,2} routed → Input {e.InputPort}");
await driver.SetRouteAsync(output, input); // Route input 1 to output 1
// The driver connects in the background and populates state from the
// initial status dump sent by the VideoHub on every new connection.
Call driver.Unregister() to stop the connection and all reconnect attempts.
Port Numbering
All port indices in this library are 0-based, matching the VideoHub Ethernet protocol.
Port 0 in code = port 1 on the physical chassis label.
No packages depend on DGI.Framework.Transport.Blackmagic.Design.Video.Hub.Driver.
v1.0.0 (2026-06-18)
By: Alvaro Yurrita
Initial Release
| Version | Downloads | Last updated |
|---|---|---|
| 1.0.0 | 2 | 6/18/2026 |