Add SRT (Secure Reliable Transport) to Video Stream In/Out to Enable Streaming over Internet

Hi friends,

Recently stumbled across SRT (Secure Reliable Transport) in our research to find solutions for point to point video streaming over the web. We’ve done some tests using other utilities and it works really really well. It’s open source, so I’m wondering how challenging it would be to add native support in TD.

More here: https://github.com/Haivision/srt

Other interesting bonus is that SRT is not just limited to video. Would be great to also stream CHOP or DAT data over the internet over SRT.

Cheers,
Evan

1 Like

I’ve added support for the 2020.40000 series of builds for SRT input. I wasn’t happy with the stability of FFmpegs SRT output though. Even in the standalone ffmpeg.exe I found it failed very often. So currently output isn’t yet supported.

1 Like

Oh interesting! Glad to hear it’s already on your radar even if not fully implemented yet.

Looking forward to the output side getting worked out.

Cheers,
Evan

Hi Malcolm, any plans to try this again? From my research SRT seems to be the replacement for RTMP/

Thanks!

Yep we definitely plan to take another look at it at some point.

1 Like

FYI Larix Broadcaster is a great mobile app for sending SRT. I was easily sending 4k 60fps over wifi from my phone to my desktop.

If this is the best way to create low-latency ptp AV connections over the web, then I’d encourage it. Is it the best option currently?

Hi @malcolm

I’m looking at setting up the SRT receiver in the new experimental build. Could you possibly confirm what mode it works in? Is it in Rendevous mode and we just put a port on the end of the URL?

I’m sending from VMIX and following these guides:

https://www.vmix.com/help23/index.htm?SRT.html

Thanks,
Scott

Just to reply here that I got it working with ports forwarded and the sender (VMIX) set as a listener.

Scott

1 Like

@flytrap can you maybe share what settings you used for receiving a SRT stream in TD from Larix Broadcaster on mobile? I can’t get it to work.
What I tried in TD build 40290:

  1. Android phone is connected via adhoc wifi network directly to TD machine

  2. TD machine has its Windows firewall disabled

  3. In TD, I set the Video Stream In TOP to srt://<my-TD-machine-ip>:11000
    This TD laptop has a Geforce 970M with recent driver

  4. In Larix Broadcaster (Android) I set the connection to srt://<my-TD-machine-ip>:11000
    Tried both HEVC and H.264

Result: Larix Broadcasting app gives a message it can’t connect to server

Any ideas appreciated!

@nettoyeur at the time I was using vMix but since I need to use this for a gig next week anyway I’ll try to get it working today and let you know.

Ok on the Video Stream In TOP, I used the following URL (be sure to disable firewall for the app and that port): srt://0.0.0.0:9494?mode=listener&latency=1000

In the Larix Broadcaster app I used the following settings:

Note, you should be able to incorporate the rest of the settings by adding them to the srt:// url in the TOP, such as I did with Latency. There is a list available in the FFMPEG wiki but I’m not sure if TD is integrated through FFMPEG or natively.

Hope this helps!
Nick

1 Like

Sweet! That’s brilliant Nick, I had no idea I could control settings via the URL in TD. Thanks so much!

cheers Idzard

1 Like

We are using ffmpeg internally so I just pass that URL straight to them.

1 Like