4 Different ways to Broadcast SRT Streams
SRT, or Secure Reliable Transport, is a type of streaming protocol that provides enhanced security and reliability for video streaming. SRT is becoming increasinglypopularamong broadcasters and streamers including industry stalwarts such as ESPN because of its ability to deliver high-quality content over challenging network conditions and for its ability tomake contribution and stream ingestion easy. SRT streams provide improved security, low latency, and flexibility and is supported by aglobal community of developers all contributing to theopen-source project. Because of the power of SRT streams,Dolby.io Real-Time Streaminghas decided to launch support with anSRT open beta program.
In this guide, we'll cover a few different ways you can start broadcasting SRT streams with Dolby.io such as OBS, vMix and many more:
Streaming SRT with OBS\
Streaming SRT with vMix\
Streaming SRT with your iPhone\
Streaming SRT Directly from an Osprey Talon Encoder\
Limitations of Publishing SRT Streams to Dolby.io
Streaming SRT with OBS
For readers familiar with theDolby.ioplatform you might know aboutour custom forked version of OBSdesigned to stream WebRTC natively. Although you can use our WebRTC-enabled OBS fork, you can actually publish SRT streams to theDolby.ioservers from the original OBS project. To do this you must have anactive Dolby.ioaccount,which you can create for freeand thelatest version of OBS installed on your system. To start publishing SRT streams with OBS follow the steps below:
1.Loginorcreate a Dolby.io accountanddownload OBS.
2.Navigate to your Dolby.io streaming dashboard and create a new token. You can leave all the tokensettingsto default.
3.Open the API tab on your newly created token dashboard and navigate to the bottom where you'll see theSRT publish path
, theSRT stream ID
, and theSRT publish URL
. CopySRT publish URL
.
The Dolby.io Streaming Token API tab. Highlighted box indicates the SRT publish URL used in OBS.
4.Open OBS and navigate to settings, then theStream
tab.
5.Inside of theStream
tab, setService
toCustom
andServer
to theSRT publish URL
.
OBS stream settings page. Remember to set Service to "Custom" and Server to "Your SRT Publish URL".
6.Apply the changes and exit settings. You are now all set up to stream with OBS. When publishing, your SRT stream will be delivered to the Dolby.io Streaming Viewer, which can be found at the Hosted Player Path.
The Dolby.io Streaming Token API tab, with hosted player path highlighted. Opening this path in a browser will launch the stream.
Although the hosted player path is a great way to view the stream, you can use theDolby.io Streaming JavaScript SDKto build a bespoke solution.
Note: If you are using the
NVIDIA NVENC H.264
encoder that comes included with OBS you must setMax B-Frames
to0
. This setting can be found in Output, then Advanced Output Mode, then the Streaming tab, where Encoder is set toNVIDIA NVENC H.264
and then Max B-frames is set to 0.If you are using the
NVIDIA NVENC H.264
encoder that comes included with OBS you must setMax B-Frames
to0
. This setting can be found in Output, then Advanced Output Mode, then the Streaming tab, where Encoder is set toNVIDIA NVENC H.264
and then Max B-frames is set to 0.
Streaming SRT with vMix
vMixis a paid windows-only remote production tool used for vision mixing. It allows users to juggle input and outputs for live broadcasts and productions and includes support for publishing SRT streams.To publish an SRT streamwith vMix follow the steps below:
1.Loginorcreate a Dolby.io account.
3.Navigate to yourDolby.iostreaming dashboard and create a new token. You can leave all the token settings to default.
4.Open the API tab on your newly created token dashboard and navigate to the bottom where you'll see theSRT publish path
,SRT stream ID
, and theSRT publish URL
. Copy theSRT publish path
and theSRT stream ID
.
5.Inside of vMix opensettings
and switch toOutput / NDI / SRT
.
The vMix mixing stage. Navigate to "Settings" and click on "Outputs / NDI / SRT" to open up the SRT settings menu.
6.Once you've switched toOutput / NDI / SRT
open the gear icon next to an output source.
Inside the SRT settings, select the gear icon highlighted in red.
7.Inside the output settingsenable SRT
, set theHostname
to the Dolby.io Millicast endpoint and thePort
to the appropriate port (typically 10,000). Additionally, include theStream ID
and make sure the Quality settings matchthe limitations of Dolby.io SRT streaming.
When creating the SRT stream define Hostname, port, Stream ID, and Quality.
8.PressOK
and exit settings. You are now all set up to stream with vMix. When streaming, your SRT stream will be delivered to theDolby.ioStreaming Viewer, which can be found at the Hosted Player Path.
The Dolby.io Streaming Token API tab, with hosted player path highlighted. Opening this path in a browser will launch the stream.
Although the hosted player path is a great way to view the stream, you can use theDolby.io Streaming JavaScript SDKto build out a bespoke solution.
Streaming SRT with your iPhone
Softvelum's Larix Broadcasteris a tool available for iOS, Android, and React Native that allows you to push SRT streams directly from your mobile device. To set up a Larix SRT stream on an iOS device:
1.Loginorcreate a Dolby.io account.
2.Download the Larix Broadcaster from the App Store.
3.Navigate to yourDolby.iostreaming dashboard and create a new token. You can leave all the token settings to default.
4.Open the API tab on your newly created token dashboard and navigate to the bottom where you'll see theSRT publish path
, theSRT stream ID
, and theSRT publish URL
. Copy theSRT publish path
and theSRT stream ID
.
5.Open the Larix Broadcaster and thenSettings
. FromSettings
, go toConnections
and add a new connection.
Create a new connection with the plus icon in the top right corner.
6.Inside the connection, set theURL
parameter to your Dolby.io Real-Time StreamingSRT publish path
and setstreamid
to yourSRT stream ID.
When adding a new connection in the Larix Broadcaster make sure to assign "streamid" and "URL".
7.From here you can exit your settings and start the stream by pressing the record button on the broadcaster.
Press the record button on the left to start an SRT stream.
8.Like the OBS and vMix examples, your SRT stream will be delivered to theDolby.ioStreaming Viewer, which can be found at the Hosted Player Path.
The Dolby.io Streaming Token API tab, with hosted player path highlighted. Opening this path in a browser will launch the stream.
Dolby.io Real-time Streaming supports a number of SDKs for creating viewer appsincluding a Flutter 3 SDKfor creating viewer apps for Android, iOS, and Web.
Streaming SRT directly from an Osprey Talon Encoder
OBS, vMix, and Larix Broadcaster are examples of software tools that you can leverage for streaming SRT into the Dolby.io Streaming service, but what about hardware options? Depending on the scale of live production you might have access to cameras with built-in encoders that can directlyegress SRT,which we can also connect to the servers. For cameras that don't have built-in encoders, you can connect the camera to an external encoder, some of which support SRT. One example of this is theOsprey Talon 4K-SC, which is not only the firstWHIP encoder but can also encode SRT streamsthat we can connect to the Dolby.io servers.
1.Loginorcreate a Dolby.io account.
2.Connect your Osprey Encoder to your camera and power it up.
3.Download theOsprey BOSS PROapplication, which will allow you to discover the encoder on your local network. Alternatively,follow this in-depth guide by the Osprey teamfor setting up your encoder.
4.Click on the appropriate encoder, launch the web interface and sign in. Information regarding signing intoOsprey equipmentcan be found here.Once signed in you will now be in the Osprey Dashboard.
5.Navigate to yourDolby.iostreaming dashboard and create a new token. You can leave all the token settings to default.
6.Open the API tab on your newly created token dashboard and navigate to the bottom where you'll see theSRT publish path
, theSRT stream ID
, and theSRT publish URL
. Copy theSRT publish path
and theSRT stream ID
.
The Dolby.io Streaming Token API tab. Highlighted box indicates the SRT publish URL used in OBS.
7.Inside the OspreyDashboard, setSRT Dest Address
to theSRT publish path
excluding the port.SetSRT Port
to the port number at the end of yourSRT publish path
(usually 10000) and setSRT Stream ID
to yourSRT Stream ID.
Set the SRT Dest Address to the SRT publish path, and SRT Port to 10000, and the SRT Stream ID to your Dolby.io Streaming Token Stream ID.
8.From here press start and the encoder will begin streaming content through theDolby.io servers.
Limitations of Publishing SRT Streams toDolby.io
It is important to note that SRT ingest support forDolby.ioReal-time Streamingis currently in beta and hence subject to a few limitations:
- Only H.264 video and AAC audio codecs are currently supported.
- Multiple programs or substreams are not supported.
- You cannot use the "auto" region for a publishing key; you must specify a region for the SRT and RTMP paths and keys to populate in the dashboard.
- Recording is currently not supported.
As the beta progresses this list will be updated to reflect the current state of SRT support.
Streaming SRT is just one part of the equation,Dolby.io Real-time Streamingalso supportsa number of SDKsfor building streaming into your platforms and apps. If you are interested in learning more about how to use our SDKscheck out our blogand let us know what you're building next.\
Feedback or Questions? Reach out to the team onTwitter,LinkedIn, or via oursupport desk.
Original Link: https://dev.to/dolbyio/4-different-ways-to-broadcast-srt-streams-21jj
Dev To
An online community for sharing and discovering great ideas, having debates, and making friendsMore About this Source Visit Dev To