How to handle Network/any other disruptions in WebRTC playback

Hi,

I have created an angular application to consume WebRTC streams from Wowza Streaming Engine by modifying the sample code provided on github

I am successfully able to stream WebRTC streams in the application. I am struggling to find sample code on how to reconnect the RTCPeerConnection if it become disconneted/failed due to network on any other reason. In traditional WebRTC, one could do a RestartICE() to reestablish the connection. However this is not supported in Safari browser as per this Doc.

So now if the RTCPeerConnection becomes disconnected/failed, I am restarting the WeRTC playback from scratch by opening a new WebSocket and exchanging SDP and ICE candidates all over again. Is there any better way to do this in Wowza implementation of WebRTC or what I am doing is the only way to handle failover scenarios ?

Regards,
Alok Kumar

Hey there, this is indeed the best flow currently for handling disconnects. So you restart it from scratch following the Websocket and WebRTC negotiation procedures. Should be pretty quick in most cases.

2 Likes