Note: A working live example to demonstrate live WebRTC publishing and subscribe features.
WebRTC Subscriber configuration for Dolby.io. The account ID is required to be configured. A static list of Ice servers is also required.
If WebRTC simulcast bitrate configurations is being published. A bitrate menu will be displayed for layer selection or switch back to auto selection.
Dolbio.io with DVR Streaming
Dolby.io Re-Stream feature allows to push publish SRT/RTMP to another streaming service that supports live HLS DVR to play back recorded areas of a live WebRTC stream.
Configuring a secondary HLS source features have already been enabled to use it as a fallback in case of errors. Configuring a DVR HLS stream will be used to play back recorded parts of the stream.
{
"rtcsubscriber": {
"dolbyio": {
"accountId": "",
"subToken": ""
},
"iceServers": [
{
"urls": [
"stun:stun.l.google.com:19302",
"stun:stun1.l.google.com:19302",
"stun:stun2.l.google.com:19302",
"stun:stun3.l.google.com:19302",
"stun:stun4.l.google.com:19302"
]
}
]
}
}
<div class="flex flex-col w-full">
<div id="dolbyio-dvr" class=""></div>
</div>
<script type="text/javascript">
var player = flowplayer("#dolbyio-dvr", {
"dolbyio": {
"accountId": "huaHNT",
"subToken": "b23ebffd67a92feff751983ad91c4ddfd83285b5a3b899cffbab1d28275dce44"
},
"live": true,
"rtc": {
"iceServers": [
{
"urls": [
"stun:stun.l.google.com:19302",
"stun:stun1.l.google.com:19302",
"stun:stun2.l.google.com:19302",
"stun:stun3.l.google.com:19302",
"stun:stun4.l.google.com:19302"
]
}
],
"server": "dolbyio"
},
"src": [
{
"publisher": false,
"src": "livestream",
"type": "application/webrtc"
},
{
"src": "http://localhost:1935/livedvr/livestream/playlist.m3u8?DVR",
"type": "application/x-mpegurl"
}
],
"token": "eyJraWQiOiIyeHRpc0Q5NHZzTjIiLCJ0eXAiOiJKV1QiLCJhbGciOiJFUzI1NiJ9.eyJjIjoie1wiYWNsXCI6NixcImlkXCI6XCIyeHRpc0Q5NHZzTjJcIixcImRvbWFpblwiOltcImVsZWN0cm90ZXF1ZS5vcmdcIl19IiwiaXNzIjoiRmxvd3BsYXllciJ9.WLUkZHpDNoaXWDaFO2V5UfXm7SnDvE1pFAM0e7ppnFovOSyCCZM-b8gQNBSElB5yirTP__x76Qyo8pMWh6lVrw"
});
</script>