Wowza Community

Transcode a stream only when a client is connected (webrtc)

We want to stream a RTSP camera via WebRTC. We need to use a transcoder because Chrome does not work with H.264 set with profile high. In order to save CPU resources on the server, we would like to disable the transcoding while there aren’t clients connected. Or in other words, the transcoding should start only when the first client connects to the wowza stream and should stop when the last client disconnects.

What’s the simplest way to achieve this?

Background (long story):

we want to stream a RTSP camera via WebRTC. We are trying this guide:

and this example:

Unfortunately, setting the camera to H.264 profile high does not allow to view the stream on Chrome. For this reason, we need to use a transcoder.

Already with four cameras, this uses a lot of CPU.

Checking for you @Andrea Lo Pumo…

At this time, this is our supported WebRTC workflow: Incoming WebRTC for publish for WebRTC playback. Needs to be Chrome (TCP or UDP) or Firefox (UDP only). No transcoding is needed for this scenario.

For Playback: WebRTC -> HLS/HDS/DASH/MSS/RTMP/RTSP (transcoding the Opus -> AAC is supported).

  • Can’t transcode into WebRTC
    You can’t use the Transcoder feature to transcode non-WebRTC content into a WebRTC stream. However, we do support transcoding WebRTC into other formats.

I am not able to offer you a workaround for the transcoder workflow -> Chrome at this time @Andrea Lo Pumo.

WebRTC is working for us: the incoming stream is RTSP from the camera, the outgoing wowza stream is WebRTC.

What it does not work is setting the camera to H.264 profile high. If we do, we need to use a transcoder.

That’s fantastic and please feel free to share that workflow with the community. As far as Wowza support for non-WebRTC ingest, we currently do not provide that. Sorry for any inconvenience that may cause.