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.
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.
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?
@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:
Android phone is connected via adhoc wifi network directly to TD machine
TD machine has its Windows firewall disabled
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
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
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.
The next release of the 2020.40000 series will have SRT output supported in the Video Stream Out TOP.
We’ve also added per-frame metadata support, so you can package channel data up with your video. DAT support should be coming soon (or will be in already by the time it’s released)
@ben the current SRT implementation is missing a few key setup variables like setting the SRT as a listener, caller, rendezvous etc and also defining the latency which is essential for SRT to work across the internet.
If you’re using FFMpeg can we add these to the URL like in OBS? Wiki - Error - 404 | OBS (see Option 1: Stream SRT using the Streaming output)
@tallscott7: yes see messages &examples above in this thread, the url is passed directly to ffmpeg internally, so you can add all ffmpeg settings such as latency and mode=caller|listener|rendezvous to your urls in the Video Stream In/Out TOPs.