Resource icon

5 minute low-latency stream setup to another computer via SRT

Want to stream something to another computer without fiddling with servers and with down to sub-second latency? This guide is here to help!
To begin, you need to get your local IP address.

Step 1.
Windows: open command prompt (cmd.exe) and enter ipconfig. The line you are looking for is IPv4 Address on whichever network you are connected to.

ipconfig.png


Linux: you know what you're doing

Step 2.
Now, go to OBS stream settings and select Custom as the server. Copy this as the server:
srt://x.x.x.x:10000?mode=listener
Instead of the x'es, copy your IP you got from step 1. You can put any port you like, not necessarily 10000, just make sure to use the same IP and port in later steps.
The ?mode=listener part tells OBS to run in server mode and wait for a connection.

obs.png


Step 3.
Open any program you want to use to capture this stream, be it VLC or another instance of OBS and enter the same URL as you did into the stream settings, however do not include ?mode=listener part.
VLC: Media -> Open Network Stream
OBS: Add a Media source and uncheck Local file.

vlc 1.png

vlc 2.png


Step 3.1. (optional)
Try to lower the cache size if you want as low of a latency as you can get - on VLC that would be under Show more options in the network streaming tab. Reduce the cache to as much as your network can handle without stuttering - an easy way to figure out your needed cache size is to ping the computer that is streaming the content a few times, see what latency it returns and triple or quadruple the average latency you get for better stability. On OBS the cache is size based and not time based, so you need to fiddle with it a bit more to figure out what works for you.

ping.png

Command run: ping x.x.x.x -n 20
(I am pinging my phone to simulate a worst case scenario for latency, hence the IP here is different)

cache.png


Step 4.
Start the stream! OBS will say Connecting... until you open the stream on the computer you want to receive it and will show Disconnected when it is no longer being viewed.
Now open the stream (either on VLC or OBS), wait til it buffers and... You're done!


Troubleshooting
  • OBS throws an error that it couldn't start the stream :(
    • Check if you entered the stream URL correctly. If it's all OK, try restarting, as the server can get stuck once in a while.
  • I get visual glitches every few seconds!!
    • Increase your cache and check your output settings. If you're still getting issues, check your stream stats - on OBS, click View > Stats. If the Frames missed or Skipped frames are anything other than 0%, this is caused by your output configuration or your streaming computer being overloaded.

Advanced
If you want to stream to many receivers, you need to set the stream IP to your router's multicast address. This is out of the scope of this guide, but there are plenty of resources online on how to figure it out.

You can stream to a computer not connected to the same network, but you will have to fiddle with port forwarding and use the remote IP address to connect to the stream. The IP you put as the server should stay the same though.
Author
StashCat
Views
13,010
First release
Last update
Rating
0.00 star(s) 0 ratings
Top