Wowza Community

Transcoding from an RTSP source?

Hi All,

I’ve got Wowza successfully taking an incoming RTMP stream, transcoding it, and republishing it via adaptive bit-rate HLS.

Now I’d like to do the same from an RTSP source, however I’ve only been able to get it to re-transmit the stream via RTSP. The source stream isn’t being passed to the transcoder, so I’m unable to re-publish the RTSP source via adaptive HLS…

I’ve created a stream file with the RTSP source & connected it to my live application. In the transcoder, I’ve disabled stream name matching & set the target transcoder template as the fallback.

What am I missing?

Many thanks in advance!

Doug

Hello

Thanks for contacting the Wowza Community!

Can you confirm you followed these steps for transcoding?
Transcoding Info

Hope this helps. If any further questions, feel free to contact us.

regards,

Jermaine

Hi @Jermaine Hemby

Yes, and with an incoming RTMP stream, everything is transcoded correctly. However it seems that when Wowza captures an RTSP stream, it doesn’t get passed to the transcoder.

The source is a Monarch/Matrox box, which can only send either RTMP, or RTSP. With RTSP, it transmits its incoming feeds automatically, without needing any interaction, but with RTMP, someone has to manually command it to connect to the stream destination (Wowza) every time a feed starts or the network resets. So to streamline things a bit, I’d prefer to use RTSP.

Wowza is configured with the necessary transcoder settings, to capture the Matrox’s RTSP stream when it’s available, and to accept its RTMP stream.

When I enable RTMP on the Matrox, Wowza picks up the incoming stream, transcodes it, and retransmits is. When I enable RTSP on the Matrox, Wowza simply retransmits the stream, and nothing is transcoded.

Doug

I think I have the same issue. Did you find a resolution?

Cheers

Brett

Not yet. I think I’m going to have to open an official support ticket.

I’ll update this post if I find a solution.

Doug

Hello, I see there is no response from wowza admins.
The Transcoder User Guide says that only single rate operation is possible with Transport protocols such as RTSP and MPEG-TS.
Can somebody please confirm whether this is still the case or there is an improvement?

You are correct @Puneet Jhingan. You cannot do adaptive bit rate streaming with RTSP as the playback protocol. Not even sure there is a player that supports an ABR RTSP stream file.

But, you can send the RTSP stream to Streaming Engine and send it out for playback in variety of other protocols, including HLS. You can also use a SMIL file once you are re-streaming it in a different protocol.

https://www.wowza.com/docs/how-to-set-up-and-run-wowza-transcoder-for-live-streaming

Does that answer your question?

https://www.wowza.com/docs/how-to-do-adaptive-bitrate-streaming

This is one of our most visited articles and I hope it assists you with your workflow.

https://www.wowza.com/docs/how-to-re-stream-video-from-an-ip-camera-rtsp-rtp-re-streaming

Hello Rose, Did not get an email alert (should I be expecting it in future?) on a response.

One of our use setups is a) RTSP uplink to WSE, b) WSE transrates the incoming stream to multiple bit rates, c) User manually selects the desired bit rate.

Is this doable?

Currently we are uplinking RTSP on 1935, which I understand is well-known port for RTMP. We do get multiple transrated streams on RTSP, but the Incoming Streams GUI shows incoming as RTMP. This is confusing. So, before we go out and make changes to Port etc, If you can fundamentally confirm that the RTSP transrating is supported we can take the trouble of moving forward.

The second Use-case is MPEG-DASH conversion. Pls confirm if same can be done in the manner as above.

Hi @Puneet Jhingan, normally you would receive an email alert from the forums that an answer was provided. Maybe it went to to a spam box?

Yes, you can transrate an RTSP source by creating a SMIL file for adaptive bitrate streaming (ABR). You’ll have to change the RTSP to a different format like HLS for playback though because we don’t support ABR for RTSP.

This is a tutorial on how to re-stream an RTSP source:

https://www.wowza.com/docs/how-to-re-stream-video-from-an-ip-camera-rtsp-rtp-re-streaming

Rose, if we use VLC, can we transrate to multiple rates and do a static/manual select. The question is because earlier documentation mentioned that only RTMP can be transrated, not TS or RTSP.

hmmm…not sure you can do that, but let me check with tech support. I know you can use VLC player with RTSP, but I need to check on if you can do this with multiple bitrates.

Reply again very shortly!

https://www.wowza.com/docs/how-to-configure-vlc-media-player-for-rtsp-rtp-playback-rtsp-rtp-interleaved-and-tuning

Ok @Puneet Jhingan, our engineers have confirmed-thanks for your patience.

When a stream is ingested successfully, it does not really matter the protocol (or port) used, the transcoder would kick in, where the incoming flow of packets are then decoded, scaled, and then encoded; the encoded packets are then sent over to the packetizer where it is packetized for the different output protocols we support (including rtsp).

The transcoding is actually occurring at a much lower level; you can disregard what you see in the Incoming Streams page. Once the streams are transcoded, there would be multiple streams that can be accessed.

So, if for example you have myStream coming in and using the transrate template, you would have myStream_360p, myStream_160p now available and being packetized for output.

You can manually refer to these streams as an rtsp playback in VLC so manually enter in VLC rtsp://wowzaHost:1935/live/myStream_360p (edited) or manually specify the other renditions if you want to switch.

What we don’t support is automatic bitrate rate for RTSP playback (where the player automatically switches to different renditions).

Also, yes @Puneet Jhingan the same can be done for MPEG-DASH, except we also support automatic bitrate for playback (using SMIL, NGRP, or AMLST).