How to Connect a Hardware Encoder to a Streaming VPS (Teradek, ATEM & Elgato Setup Guide)

A hardware encoder connects to a streaming VPS exactly the way OBS does: it opens an outbound RTMP or SRT connection to your server’s ingest port and pushes video into an application name and stream key you define. The VPS doesn’t know or care whether the source is a software encoder running on a laptop or a dedicated box like a Teradek Vidiu X or Blackmagic ATEM Mini Pro — what changes is where the encoding load lives, and that has real implications for reliability, CPU headroom, and field setup.

We run streaming engines (Wowza, Ant Media, NGINX-RTMP, Red5 Pro, Flussonic, MistServer) pre-installed on VPS instances all day, and hardware encoders are one of the most common — and most misconfigured — ingest sources we see. This guide covers the actual connection steps, per-engine protocol support, and the mistakes that cause a hardware encoder to sit at “connecting…” forever.

Key Takeaways

  • A hardware encoder needs three things to reach a VPS: the server’s public IP or hostname, an application/stream path, and either an RTMP URL + stream key or an SRT URL + streamid — no different from software encoders.
  • Wowza and Ant Media Server both accept native SRT ingest; NGINX-RTMP does not and needs a bridge tool like srt-live-transmit in front of it.
  • Ant Media Server listens for SRT on UDP port 4200 by default (srt://your-vps-ip:4200?streamid=live/streamkey); Wowza assigns SRT a port per stream via a .stream file or a shared srtListenerLocalPort in VHost.xml, not one fixed port.
  • The Blackmagic ATEM Mini Pro ships with only 3 platform presets (YouTube, Facebook, Twitch) and 6 bitrate options out of the box — custom RTMP destinations require editing its streaming.xml file, and its encoder tops out at 70 Mbps capped to 1080p.
  • Most hardware-encoder connection failures are firewall or bitrate-headroom problems, not encoder or server bugs — open the ingest port first, then drop bitrate before touching anything else.

Why Use a Hardware Encoder Instead of OBS?

The honest answer: most people don’t need to. If a laptop or dedicated PC sitting next to your camera can run OBS reliably, that’s a cheaper and more flexible path, and it’s what we recommend by default. Hardware encoders earn their cost in three specific situations we see repeatedly from customers: field production where a laptop isn’t practical (weddings, sports, ENG-style news gathering), unreliable last-mile connectivity where bonded cellular/WiFi/Ethernet matters more than encoding flexibility, and fixed-install broadcast setups (churches, corporate AV rooms, control rooms) where a switcher with a built-in encoder replaces a separate capture-plus-software chain entirely.

The tradeoff is real: hardware encoders are less flexible than OBS for scene composition, overlays, and multi-source switching, and firmware updates lag behind software encoder feature releases. A Blackmagic ATEM Mini Pro handles hardware switching plus encoding in one box, which is genuinely useful for a single-operator live event — but if you need dynamic lower-thirds, browser sources, or scene transitions beyond basic cuts, you’ll still reach for software.

How Do You Actually Connect a Hardware Encoder to a VPS?

The connection sequence is the same regardless of vendor:

  1. Create the application/stream on your engine first. On Wowza this is an Application (e.g., live) under conf/[vhost]/[app-name]/; on Ant Media it’s created via the dashboard or the REST API (POST /rest/v2/applications/{appName}); on NGINX-RTMP it’s an application {} block in nginx.conf.
  2. Open the ingest port in your VPS firewall. RTMP is TCP 1935 by default on all three engines. SRT ports vary by engine (see the table below) and are UDP, not TCP — a surprisingly common failure point since admins forget UDP rules when they’ve already opened 1935/tcp.
  3. Enter the server address on the encoder. For RTMP, this is typically split into two fields: “Server URL” (rtmp://your-vps-ip:1935/live) and “Stream Key” (your stream name). For SRT, it’s usually a single URL field: srt://your-vps-ip:4200?streamid=live/mystream for Ant Media, for example.
  4. Set bitrate below your actual measured upload speed, not your ISP’s advertised speed. We size this at roughly 65-70% of measured upload throughput to leave headroom for TCP/UDP overhead and network jitter — a 20 Mbps measured uplink should encode at 12-14 Mbps, not 18-20.
  5. Start the stream on the encoder and confirm ingest on the server — Wowza’s Stream Manager, Ant Media’s dashboard live-stream list, or NGINX-RTMP’s /stat XML page will show the incoming stream within a few seconds if the handshake succeeds.

Teradek’s own setup flow for the (now-discontinued) Vidiu Pro, documented in Ant Media Server’s official wiki, matches this exactly: select “Manual” mode on the encoder, enter the Ant Media Server’s RTMP URL into the “RTMP Server URL” field, and type the stream name into the “Stream” box — no vendor-specific magic beyond that.

Teradek, ATEM Mini Pro, and Elgato — Which Hardware Encoder Fits Your Setup?

EncoderProtocolsMax resolution/bitrateBonded connectivityBest fit
Teradek Vidiu XRTMP, RTMPS, SRT1080p60 H.264WiFi 6 + Ethernet + LTE via Teradek Sharelink (paid)Field production, unreliable last-mile links
Blackmagic ATEM Mini ProRTMP (built-in presets + custom via streaming.xml)1080p, up to 70 Mbps encodeNone native — relies on wired/WiFi uplinkSingle-operator live switching + streaming in one box
Blackmagic ATEM Streaming BridgeSRT, RTMP (decode only)12G-SDI/HDMI outputN/A (receiving device)Converting a VPS-relayed feed back to SDI/HDMI for monitors or downstream gear
Elgato Game Capture HDRTMP (direct, no PC required in some modes)1080pNoneBudget capture-card-style encoding, gaming/creator setups

The ATEM Streaming Bridge is worth calling out because it’s not actually a hardware encoder for your VPS — it’s a decoder that does the reverse job, taking an SRT or RTMP H.264 stream (including one relayed back out of your VPS) and converting it to SDI/HDMI for a monitor or switcher. If you see it recommended alongside the ATEM Mini Pro, know it solves a different problem: getting a stream out of IP form, not into your server.

Does Your Streaming Engine Support SRT From a Hardware Encoder?

This is where engine choice actually matters, because not every pre-installed engine handles SRT ingest the same way:

EngineSRT ingestDefault SRT portNotes
Wowza Streaming EngineNativePer-stream, via .stream file or shared srtListenerLocalPort in VHost.xmlNo single fixed port — you assign it per source
Ant Media ServerNativeUDP 4200Configurable in /usr/local/antmedia/conf/red5.properties; streamid format is live/streamname
NGINX-RTMPNot nativeN/ANeeds srt-live-transmit or a similar SRT-to-RTMP relay running in front of it
Red5 ProNative (via plugin)ConfigurableRequires the SRT plugin to be enabled
FlussonicNativeConfigurableSRT input defined per-stream in the config
MistServerNativeConfigurableUses the rist://srt:// input protocol scheme directly in the stream config

If your hardware encoder only speaks RTMP — which covers most Elgato gear and the ATEM Mini Pro’s built-in streaming feature — this table doesn’t matter to you; every engine we run accepts plain RTMP with zero extra setup. It matters when you’re pairing a Teradek-class encoder with NGINX-RTMP specifically, since that combination needs the extra relay step the other engines skip.

What Bitrate and VPS Specs Do You Need for a Hardware-Encoded Feed?

Hardware encoders don’t reduce your VPS sizing requirements — the server still has to accept, and in most cases transcode or repackage, whatever bitrate arrives. On a 4 vCPU / 8 GB VPS running Wowza with a single 1080p60 passthrough (no transcoding, just repackaging RTMP into HLS), we’ve measured stable delivery to roughly 600-800 concurrent HLS viewers before CPU became the bottleneck on the segmenting/packaging process, at a 6 Mbps incoming feed. Add a live ABR transcode ladder (1080p/720p/480p) off that same incoming feed, and the same 4 vCPU box drops to handling one or two simultaneous transcoded sources before CPU saturates — transcoding, not ingest, is what eats cores.

A practical starting point: a single hardware-encoded 1080p60 source at 6-8 Mbps passthrough runs comfortably on a 2 vCPU / 4 GB VPS; add ABR transcoding and plan for 4 vCPU / 8 GB minimum per simultaneous transcoded source.

Troubleshooting: Why Won’t My Hardware Encoder Connect to My VPS?

Nearly every “encoder won’t connect” ticket we see traces back to one of three causes, in this order of likelihood:

  1. The ingest port isn’t open, or the wrong protocol is blocked. Check that 1935/tcp is open for RTMP and that the correct UDP port is open for SRT — these are separate firewall rules, and opening one doesn’t open the other.
  2. The encoder’s bitrate exceeds available upload bandwidth. A hardware encoder will often connect successfully and then drop the stream 10-30 seconds in once buffers fill — that’s a bitrate problem, not a server problem. Drop bitrate by 30-40% and retest before assuming the VPS is at fault.
  3. The application/stream name doesn’t exist on the server yet. RTMP and SRT connections will fail immediately, not intermittently, if you’re pushing to an application path that was never created on the engine — this is the most common first-time setup mistake.

If all three check out and the connection still fails, confirm the encoder’s firmware is current — both Teradek and Blackmagic have shipped firmware updates that changed RTMP handshake behavior in ways that broke connections to certain server configurations.

Frequently Asked Questions

Do I need a hardware encoder if I already stream with OBS? No — OBS running on a reasonably capable PC handles the vast majority of streaming needs, and hardware encoders only pay off for field production, bonded-connectivity scenarios, or fixed-install switcher setups where a separate PC isn’t practical.

Can NGINX-RTMP accept an SRT feed from a Teradek encoder? Not directly — nginx-rtmp-module has no native SRT support, so you need an SRT-to-RTMP relay tool like srt-live-transmit running in front of it, whereas Wowza and Ant Media Server accept SRT natively.

What port does a hardware encoder need to reach my VPS? RTMP uses TCP port 1935 on Wowza, Ant Media, and NGINX-RTMP by default; SRT uses a UDP port that varies by engine — Ant Media defaults to 4200, while Wowza assigns SRT ports per stream rather than using one fixed default.

Is the Blackmagic ATEM Mini Pro’s built-in streaming enough, or do I need OBS too? For a single-operator event with basic camera switching and no dynamic overlays, the ATEM Mini Pro’s built-in RTMP streaming is enough on its own; if you need custom destinations beyond YouTube/Facebook/Twitch, you’ll need to edit its streaming.xml file to add them.

Does a hardware encoder reduce the VPS specs I need? No — the VPS still has to ingest and process whatever bitrate the encoder sends, so sizing is driven by incoming bitrate, viewer count, and whether you’re transcoding, not by which device produced the source feed.

Get Streaming in 60 Seconds

Whether your source is OBS, a Teradek Vidiu X, or an ATEM Mini Pro, the server side of the equation doesn’t change — you need an engine that’s configured correctly and ready to accept the connection the moment you hit “Start Stream.” Get a pre-installed Wowza, Ant Media, or NGINX-RTMP VPS from StreamingVPS.com — go live in 60 seconds. See our Wowza streaming VPS plans or check pricing for the full engine lineup.

Leave a Reply

Your email address will not be published. Required fields are marked *