Rank: Member
Groups: Registered
Joined: 5/3/2015(UTC) Posts: 11 Location: UK
Was thanked: 6 time(s) in 3 post(s)
|
vMix IO box: Linux SDI ⇄ OMT encoder on AM4I wanted a small, reliable SDI ⇄ OMT box for events. DDR5 prices are silly at the moment and I already had a good stock of DDR4, so I built it on AM4 around a Ryzen 7 5700G to make use of it. It's running 3× 1080p50 SDI in + 1 out, and it got through an overnight stress test of nearly 12 hours without a restart. Hardware
- CPU: Ryzen 7 5700G (8 cores / 16 threads)
- Motherboard: Gigabyte B550M X AORUS ELITE WIFI7
- RAM: 2× 16 GB Corsair Vengeance LPX DDR4-3000 (CMK32GX4M2D3000C16), reused from stock
- Capture card: Blackmagic DeckLink Duo 2 in the top x16 slot. It runs at its full Gen2 x4.
- Storage: 256 GB NVMe
- Power supply: be quiet! Pure Power 13 M 550W
- Case: micro-ATX with a carry handle, 3 Noctua fans
- Network: onboard 2.5 GbE (Realtek RTL8125)
SoftwareLinux Mint 22.3, Blackmagic Desktop Video 16.5, vMix IO UsageThree SDI inputs go out as OMT, and vMix sends a quad of them back over OMT for the SDI output. Code:
Moving bars Stress test
(4 h 50 m) (11 h 45 m)
CPU average / peak 3.5% / 5% 7.0% / 15%
Busiest core, average 12% 19%
CPU temp, average / max 54°C / 62°C 61°C / 67°C
Network out (3× OMT) 52 Mb/s 518 Mb/s
Network in (quad return) 31 Mb/s 190 Mb/s
RAM used ~3 GB of 32 GB ~3.2 GB of 32 GB
- The moving bars test smoothness, but they're very easy to compress.
- The stress clip is a deliberately nasty 1080p50 loop: grain, noise and constantly changing fine detail, worse than most real camera pictures.
- Network: even under stress it's about 700 Mb/s in total, under a third of the 2.5 GbE link.
- Fans: the temperatures were on the BIOS fan curve with the fans idling at around 25%. Running them at 100% brought the CPU down from about 60°C to 52°C.
The real limit is the DeckLink's four channels, not the PC. A second Duo 2 looks very doable. Lessons / gotchas
- RAM: mixing kits held everything at 2133. Four sticks wouldn't run XMP at all. Two matched sticks at 3000 work fine. The 5700G's built-in graphics share system RAM, so memory speed matters more than capacity.
- Secure Boot must be off. The Blackmagic driver is unsigned. Without this the card simply disappears.
- vMix IO autostart: it has to be started from its own folder (./vMixIO). A small launcher script plus a Startup Applications entry handles that, with auto-login so it boots straight into vMix IO.
- Fan sensors: on newer Gigabyte boards Linux needs the community it87 driver (github.com/frankcrawford/it87) before it can read the fans. With it installed, fan control works too.
ExtrasI added a small status app. It shows a window on a little screen attached to the box, plus the same page in a browser on port 80. It covers:
- the IP address, and whether vMix IO is running or stopped
- CPU per physical core, RAM and temperatures
- fans, with a boost button
- network use against the 2.5 Gb/s link
A History page keeps charts and CSV logs, which is where the figures above came from. There's also a button to open vMix IO's own page on port 8080. One thing I noticed in the log: on the normal fan curve the CPU crept from 57°C to about 63°C overnight while the fans stayed at 25%. That's safe, but it means the curve isn't reacting at those temperatures. For hot event days, a slightly steeper Smart Fan 6 curve, ramping up from around 55°C, would keep it nearer the 52°C I saw with boost on. Yes, AI (Claude) was used to help me make the choices on the spec, and to make the programs to test it and turn it into an easy-to-use system. I guess it's a bit like the stage box the audio guys have, but for video. Where I'm running 2 vMix machines, I can also share the extra 4 in/outs across both, which makes it very flexible. It will get used on a real job next week, so I'm very pleased the testing went well. Hope it's helpful to someone. Cheers, Alex
|