media server logo

vMix SRT: how to send and receive SRT streams

Apr 28, 2026

This tutorial shows how to use vMix with SRT: first, send an SRT stream from vMix to Callaba, then receive the same SRT feed back in vMix to confirm that the signal is arriving correctly.

This workflow is useful when vMix is your live production tool and Callaba is your controlled SRT ingest point. vMix sends the live program feed over SRT. Callaba receives it, exposes live statistics, and makes the stream available for routing, monitoring, recording, restreaming, or return preview.

By the end of this guide, you will understand both sides of the workflow: vMix SRT output and vMix SRT input.

vMix SRT: send vs receive

When people say “vMix SRT,” they usually mean one of two workflows.

  • vMix sends SRT: vMix acts as the sender and publishes the live output to an SRT server.
  • vMix receives SRT: vMix acts as the receiver and brings an incoming SRT stream into the production as an input.

This guide covers both. First, vMix sends a stream to Callaba. Then vMix receives the same stream back from Callaba as a validation or monitoring input.

The important part is to use the right values for the right direction. Use publish-side values when vMix sends the stream. Use receiver-side values when vMix receives the stream.

What is an SRT URL in vMix?

An SRT URL contains the network information needed to send or receive an SRT stream. It usually includes the host, port, and optional parameters such as stream ID, mode, latency, or passphrase.

A typical SRT URL looks like this:

Command
srt://12.34.56.78:1935?streamid=output/mynewsrt/srt-stream-01

In vMix, you may need to split this URL into separate fields:

  • Hostname: 12.34.56.78
  • Port: 1935
  • Stream ID: output/mynewsrt/srt-stream-01

If Callaba gives you a ready Publisher URL or Receiver URL, use those values as the source of truth. Do not mix publisher-side and receiver-side parameters.

vMix SRT caller and listener mode

SRT uses connection modes. The most common modes are Caller and Listener.

  • Caller: the side that starts the connection.
  • Listener: the side that waits for an incoming connection.

In a common vMix-to-Callaba workflow, vMix is the caller and Callaba is the listener. vMix starts the connection and sends the stream to the Callaba SRT server.

When vMix receives a stream back from Callaba, vMix usually connects to the receiver-side endpoint as SRT Caller. This is why the correct hostname, port, and stream ID matter.

What you need before you start

  • An active Callaba environment where you can create an SRT server.
  • vMix installed on the machine that will send and receive the stream.
  • A video source ready in vMix, such as a camera, file, playlist, NDI input, RTMP input, or another live input.
  • Network access to the UDP port used by your SRT server.
  • The correct publish-side and receive-side SRT values from Callaba.

If you are new to the platform, start with How to launch Callaba Cloud Live Streaming. If you want to compare transport choices first, see SRT vs RTMP.

Live vMix context

See the two signals behind SRT behavior in vMix

In vMix workflows, these two signals usually tell the story first. Incoming bitrate shows whether the contribution is still flowing, while network RTT helps explain whether the path is losing enough timing headroom to make SRT recovery less reliable.

ConnectionConnecting
Last updateWaiting for the first packet
Active streams
Network RTT
The current round-trip time reported by the SRT session.
ms

Before you open the vMix SRT settings, use the live widget as a quick operational reference. It keeps attention on two signals that usually explain SRT behavior first in production: incoming bitrate and network RTT. If RTT rises while the stream keeps pushing the same bitrate, the path may be losing timing headroom and your current SRT latency may become too aggressive.

Send an SRT stream from vMix to Callaba

1. Add the video source in vMix

Start vMix and click Add Input. Add the source you want to broadcast. In this example it is a music video, but the same flow works with cameras, playlists, NDI, RTMP, screen capture, or other supported inputs.

vMix Add Input window

The left vMix window is the preview, and the right window is the live output. After adding your source, send it to output with Cut or Fade.

2. Open the SRT output settings in vMix

Open Settings in the upper-right corner, then go to Outputs / NDI / SRT. This is where you choose which output you want to send and how vMix should package it.

Click the gear icon next to the output you want to use for SRT.

vMix Outputs NDI and SRT settings

3. Prepare the vMix SRT output

In the SRT settings window, choose the output, audio bus, and resolution you want to send. Keep this window open because you will return to it after creating the SRT server in Callaba.

vMix SRT output parameters

4. Create the SRT server in Callaba

Open Callaba, go to SRT servers, and click Add New. Give the server a clear name, then set the two ports:

  • Port: the publisher port used by vMix to send the stream into Callaba.
  • Receiver port: the port used later when you receive the stream back in vMix.

Save the SRT server when the values are ready.

Create SRT server in Callaba

5. Open the SRT connection details

Click Info on the SRT server. This screen shows the exact parameters you need for sending and receiving.

Open SRT server info in Callaba
SRT send and receive parameters in Callaba

6. Copy the publish-side values into vMix

For the outgoing stream, copy the publish-side values from Callaba into vMix.

  • SRT Hostname: the server IP or hostname without srt://.
  • Port: the publisher port.
  • Stream ID: the value shown in the Connection via Stream ID tab, if your workflow uses Stream ID.

Paste these values into the vMix SRT settings window you kept open earlier.

vMix SRT sender configuration

7. Start sending the SRT stream from vMix

Once the host, port, and optional Stream ID are correct, enable the SRT output in vMix.

The stream now starts going to the Callaba server. You can monitor or restart it later from the gear icon next to External at the bottom of the vMix interface.

vMix External SRT output controls

Confirm that Callaba is receiving the vMix SRT stream

After starting the SRT output in vMix, check the SRT server in Callaba. Do not rely only on the vMix output state. Confirm that the server is actually receiving data.

Check these signals:

  • Incoming bitrate: confirms that media is arriving.
  • Connection state: confirms that the SRT session is active.
  • RTT: shows timing pressure on the network path.
  • Packet loss and retransmissions: show whether SRT is recovering from network problems.
  • Preview or downstream output: confirms that the media is usable.

If bitrate is not arriving, re-check the hostname, port, Stream ID, caller/listener mode, and firewall rules.

Receive the same SRT stream back in vMix

This step is useful when you want to confirm that the signal is really reaching the server, or when you need a local monitoring copy of the same contribution feed.

8. Add a new SRT input in vMix

In vMix, click Add Input, open Stream / SRT, and set Stream Type to SRT (Caller).

Now use the values from the Receiver URL in Callaba.

A typical Receiver URL looks like this:

Command
srt://12.34.56.78:1935?streamid=output/mynewsrt/srt-stream-01

vMix needs these values extracted from that URL:

  • Hostname: the server IP or hostname.
  • Port: the receiver port.
  • Stream ID: the value from the query string, for example output/mynewsrt/srt-stream-01.
Receiving SRT in vMix using caller mode

9. Prevent an audio or video loop

If you are sending and receiving the same stream on the same machine, make sure the incoming SRT input does not go back into the same master output path. Otherwise you can create an echo loop in audio or a recursive video loop.

This matters especially when you use vMix as both the production sender and the monitoring receiver.

vMix audio routing check for received SRT stream

10. Confirm that the SRT feed is live in vMix

If everything is correct, the incoming SRT feed appears in vMix. You should also see audio activity if the stream includes audio and the audio route is enabled.

Incoming SRT stream visible in vMix

11. Reset the input if the signal stalls

If the signal stops, latency grows unexpectedly, or the stream appears to freeze, reset the incoming SRT input in vMix. You can also reset the outgoing SRT output from the External controls.

Resetting an SRT stream in vMix

What to check if vMix SRT does not work

  • Hostname: make sure the IP address or hostname is copied correctly.
  • Port: verify that you are using the publish port for sending and the receiver port for receiving.
  • Stream ID: copy the Stream ID exactly as shown in Callaba.
  • Caller/listener mode: the sending side and receiving side must match the real connection direction.
  • UDP access: SRT uses UDP, so the required port must be open in the firewall, cloud security group, and network path.
  • Output enabled: confirm that the outgoing vMix SRT output is actually enabled.
  • Audio routing: if sending and receiving on the same machine, prevent the received signal from looping back into the main output.
  • Latency: unstable networks may need a larger SRT latency buffer.

Common vMix SRT problems and fixes

No video appears in the receiving input

Most often this means the receive-side hostname, port, or Stream ID does not exactly match the Receiver URL in Callaba. Re-copy the values and try again.

vMix sends SRT, but Callaba receives nothing

Check the publish-side hostname, publisher port, Stream ID, and UDP firewall rules. Make sure you are not using receiver-side values for the outgoing vMix stream.

The stream was live, then stalled or accumulated delay

Reset the receiving input first. If the problem persists, reset the outgoing SRT output and check the network path. If the route is unstable, review your SRT latency strategy with this SRT latency guide.

The audio repeats with an echo effect

This usually means the received SRT signal is being mixed back into the same master path as the original output. Remove it from the return path and test again.

The stream connects but video quality is unstable

Check RTT, packet loss, retransmissions, bitrate, and latency. SRT can recover from network problems only if there is enough timing and bandwidth headroom.

You need broader compatibility than SRT gives you

If the receiving destination or workflow does not support SRT cleanly, compare it with RTMP vs SRT and decide whether RTMP is the better publishing path for that stage.

When this vMix SRT workflow is useful

This pattern is useful when vMix is your live production tool but you want Callaba to act as the stable SRT boundary.

Use this workflow when you need to:

  • send a vMix program feed to a cloud SRT server
  • monitor whether the SRT stream is arriving correctly
  • route a vMix feed into recording or restreaming workflows
  • test SRT contribution before a real event
  • separate production output from cloud ingest and delivery
  • send one vMix source into a controlled platform instead of rebuilding the path every time

FAQ

Does vMix support SRT?

Yes. vMix supports SRT workflows for sending and receiving live streams. You can send a vMix output to an SRT server, and you can also add an incoming SRT stream as an input in vMix.

How do I send SRT from vMix?

Open vMix settings, go to Outputs / NDI / SRT, choose the output you want to send, and configure the SRT destination using the hostname, port, and Stream ID from your SRT server. Then enable the SRT output.

How do I receive SRT in vMix?

Click Add Input in vMix, open Stream / SRT, choose SRT Caller or the mode required by your setup, then enter the receiver-side hostname, port, and Stream ID. If the sender is live and the values are correct, the SRT feed should appear as a vMix input.

What is the difference between vMix SRT input and output?

vMix SRT output sends your program feed to an SRT server. vMix SRT input receives an SRT feed and brings it into vMix as a source. Use publisher-side values for output and receiver-side values for input.

Should vMix use SRT caller or listener?

Use caller mode when vMix connects to an SRT listener endpoint, such as a Callaba SRT server. Use listener mode when vMix waits for another sender to connect directly to it. The correct mode depends on which side starts the connection.

What is a vMix SRT Stream ID?

A Stream ID is an SRT parameter that helps identify or route a specific stream. In Callaba workflows, the Stream ID can tell the server which feed is being published or which output should be received. Copy it exactly as shown in the Callaba SRT details.

Why is my vMix SRT stream not connecting?

Common causes include a wrong hostname, wrong port, incorrect Stream ID, wrong caller/listener mode, blocked UDP traffic, passphrase mismatch, or using receiver-side values when you should use publish-side values.

Why does vMix receive black video over SRT?

The SRT connection may be active while the media payload is wrong or missing. Check that the sender is actually live, the correct output is enabled, the codec is compatible, and the stream has valid video frames.

Can I send and receive the same SRT stream on one vMix machine?

Yes, but you must avoid audio and video loops. Make sure the received SRT input is not routed back into the same master output that is being sent out.

Is SRT better than RTMP for vMix?

SRT is usually better for contribution over unstable or long-distance networks because it supports packet recovery, encryption, and latency tuning. RTMP is still useful for simple publishing and platforms that expect RTMP ingest.

Next steps